{"path":"lib/api-client-react/src/generated/api.ts","size":17844,"locked":false,"binary":false,"truncated":false,"content":"/**\n * Generated by orval v8.9.1 🍺\n * Do not edit manually.\n * Api\n * Mappers Protocol API\n * OpenAPI spec version: 0.1.0\n */\nimport {\n  useMutation,\n  useQuery\n} from '@tanstack/react-query';\nimport type {\n  MutationFunction,\n  QueryFunction,\n  QueryKey,\n  UseMutationOptions,\n  UseMutationResult,\n  UseQueryOptions,\n  UseQueryResult\n} from '@tanstack/react-query';\n\nimport type {\n  DashboardStats,\n  DeliverableInput,\n  HealthStatus,\n  Job,\n  JobInput,\n  JobUpdate,\n  ListJobsParams,\n  OracleHealth,\n  SubmitResult\n} from './api.schemas';\n\nimport { customFetch } from '../custom-fetch';\nimport type { ErrorType , BodyType } from '../custom-fetch';\n\ntype AwaitedInput<T> = PromiseLike<T> | T;\n\n      type Awaited<O> = O extends AwaitedInput<infer T> ? T : never;\n\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n\n\nexport const getHealthCheckUrl = () => {\n\n\n\n\n  return `/api/healthz`\n}\n\n/**\n * Returns server health status\n * @summary Health check\n */\nexport const healthCheck = async ( options?: RequestInit): Promise<HealthStatus> => {\n\n  return customFetch<HealthStatus>(getHealthCheckUrl(),\n  {\n    ...options,\n    method: 'GET'\n\n\n  }\n);}\n\n\n\n\n\nexport const getHealthCheckQueryKey = () => {\n    return [\n    `/api/healthz`\n    ] as const;\n    }\n\n\nexport const getHealthCheckQueryOptions = <TData = Awaited<ReturnType<typeof healthCheck>>, TError = ErrorType<unknown>>( options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof healthCheck>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n  const queryKey =  queryOptions?.queryKey ?? getHealthCheckQueryKey();\n\n\n\n    const queryFn: QueryFunction<Awaited<ReturnType<typeof healthCheck>>> = ({ signal }) => healthCheck({ signal, ...requestOptions });\n\n\n\n\n\n   return  { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof healthCheck>>, TError, TData> & { queryKey: QueryKey }\n}\n\nexport type HealthCheckQueryResult = NonNullable<Awaited<ReturnType<typeof healthCheck>>>\nexport type HealthCheckQueryError = ErrorType<unknown>\n\n\n/**\n * @summary Health check\n */\n\nexport function useHealthCheck<TData = Awaited<ReturnType<typeof healthCheck>>, TError = ErrorType<unknown>>(\n  options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof healthCheck>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n\n ):  UseQueryResult<TData, TError> & { queryKey: QueryKey } {\n\n  const queryOptions = getHealthCheckQueryOptions(options)\n\n  const query = useQuery(queryOptions) as  UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n  return { ...query, queryKey: queryOptions.queryKey };\n}\n\n\n\n\n\n\n\nexport const getListJobsUrl = (params?: ListJobsParams,) => {\n  const normalizedParams = new URLSearchParams();\n\n  Object.entries(params || {}).forEach(([key, value]) => {\n\n    if (value !== undefined) {\n      normalizedParams.append(key, value === null ? 'null' : value.toString())\n    }\n  });\n\n  const stringifiedParams = normalizedParams.toString();\n\n  return stringifiedParams.length > 0 ? `/api/jobs?${stringifiedParams}` : `/api/jobs`\n}\n\n/**\n * Returns all registered escrow jobs\n * @summary List all jobs\n */\nexport const listJobs = async (params?: ListJobsParams, options?: RequestInit): Promise<Job[]> => {\n\n  return customFetch<Job[]>(getListJobsUrl(params),\n  {\n    ...options,\n    method: 'GET'\n\n\n  }\n);}\n\n\n\n\n\nexport const getListJobsQueryKey = (params?: ListJobsParams,) => {\n    return [\n    `/api/jobs`, ...(params ? [params] : [])\n    ] as const;\n    }\n\n\nexport const getListJobsQueryOptions = <TData = Awaited<ReturnType<typeof listJobs>>, TError = ErrorType<unknown>>(params?: ListJobsParams, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof listJobs>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n  const queryKey =  queryOptions?.queryKey ?? getListJobsQueryKey(params);\n\n\n\n    const queryFn: QueryFunction<Awaited<ReturnType<typeof listJobs>>> = ({ signal }) => listJobs(params, { signal, ...requestOptions });\n\n\n\n\n\n   return  { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof listJobs>>, TError, TData> & { queryKey: QueryKey }\n}\n\nexport type ListJobsQueryResult = NonNullable<Awaited<ReturnType<typeof listJobs>>>\nexport type ListJobsQueryError = ErrorType<unknown>\n\n\n/**\n * @summary List all jobs\n */\n\nexport function useListJobs<TData = Awaited<ReturnType<typeof listJobs>>, TError = ErrorType<unknown>>(\n params?: ListJobsParams, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof listJobs>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n\n ):  UseQueryResult<TData, TError> & { queryKey: QueryKey } {\n\n  const queryOptions = getListJobsQueryOptions(params,options)\n\n  const query = useQuery(queryOptions) as  UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n  return { ...query, queryKey: queryOptions.queryKey };\n}\n\n\n\n\n\n\n\nexport const getCreateJobUrl = () => {\n\n\n\n\n  return `/api/jobs`\n}\n\n/**\n * Cache an on-chain job in the database after initialization\n * @summary Register a job\n */\nexport const createJob = async (jobInput: JobInput, options?: RequestInit): Promise<Job> => {\n\n  return customFetch<Job>(getCreateJobUrl(),\n  {\n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      jobInput,)\n  }\n);}\n\n\n\n\nexport const getCreateJobMutationOptions = <TError = ErrorType<void>,\n    TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof createJob>>, TError,{data: BodyType<JobInput>}, TContext>, request?: SecondParameter<typeof customFetch>}\n): UseMutationOptions<Awaited<ReturnType<typeof createJob>>, TError,{data: BodyType<JobInput>}, TContext> => {\n\nconst mutationKey = ['createJob'];\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n      options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n      options\n      : {...options, mutation: {...options.mutation, mutationKey}}\n      : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n      const mutationFn: MutationFunction<Awaited<ReturnType<typeof createJob>>, {data: BodyType<JobInput>}> = (props) => {\n          const {data} = props ?? {};\n\n          return  createJob(data,requestOptions)\n        }\n\n\n\n\n\n\n  return  { mutationFn, ...mutationOptions }}\n\n    export type CreateJobMutationResult = NonNullable<Awaited<ReturnType<typeof createJob>>>\n    export type CreateJobMutationBody = BodyType<JobInput>\n    export type CreateJobMutationError = ErrorType<void>\n\n    /**\n * @summary Register a job\n */\nexport const useCreateJob = <TError = ErrorType<void>,\n    TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof createJob>>, TError,{data: BodyType<JobInput>}, TContext>, request?: SecondParameter<typeof customFetch>}\n ): UseMutationResult<\n        Awaited<ReturnType<typeof createJob>>,\n        TError,\n        {data: BodyType<JobInput>},\n        TContext\n      > => {\n      return useMutation(getCreateJobMutationOptions(options));\n    }\n\nexport const getGetJobUrl = (jobId: string,) => {\n\n\n\n\n  return `/api/jobs/${jobId}`\n}\n\n/**\n * @summary Get a job by jobId\n */\nexport const getJob = async (jobId: string, options?: RequestInit): Promise<Job> => {\n\n  return customFetch<Job>(getGetJobUrl(jobId),\n  {\n    ...options,\n    method: 'GET'\n\n\n  }\n);}\n\n\n\n\n\nexport const getGetJobQueryKey = (jobId: string,) => {\n    return [\n    `/api/jobs/${jobId}`\n    ] as const;\n    }\n\n\nexport const getGetJobQueryOptions = <TData = Awaited<ReturnType<typeof getJob>>, TError = ErrorType<void>>(jobId: string, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getJob>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n  const queryKey =  queryOptions?.queryKey ?? getGetJobQueryKey(jobId);\n\n\n\n    const queryFn: QueryFunction<Awaited<ReturnType<typeof getJob>>> = ({ signal }) => getJob(jobId, { signal, ...requestOptions });\n\n\n\n\n\n   return  { queryKey, queryFn, enabled: !!(jobId), ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof getJob>>, TError, TData> & { queryKey: QueryKey }\n}\n\nexport type GetJobQueryResult = NonNullable<Awaited<ReturnType<typeof getJob>>>\nexport type GetJobQueryError = ErrorType<void>\n\n\n/**\n * @summary Get a job by jobId\n */\n\nexport function useGetJob<TData = Awaited<ReturnType<typeof getJob>>, TError = ErrorType<void>>(\n jobId: string, options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getJob>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n\n ):  UseQueryResult<TData, TError> & { queryKey: QueryKey } {\n\n  const queryOptions = getGetJobQueryOptions(jobId,options)\n\n  const query = useQuery(queryOptions) as  UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n  return { ...query, queryKey: queryOptions.queryKey };\n}\n\n\n\n\n\n\n\nexport const getUpdateJobUrl = (jobId: string,) => {\n\n\n\n\n  return `/api/jobs/${jobId}`\n}\n\n/**\n * @summary Update job status or metadata\n */\nexport const updateJob = async (jobId: string,\n    jobUpdate: JobUpdate, options?: RequestInit): Promise<Job> => {\n\n  return customFetch<Job>(getUpdateJobUrl(jobId),\n  {\n    ...options,\n    method: 'PATCH',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      jobUpdate,)\n  }\n);}\n\n\n\n\nexport const getUpdateJobMutationOptions = <TError = ErrorType<void>,\n    TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof updateJob>>, TError,{jobId: string;data: BodyType<JobUpdate>}, TContext>, request?: SecondParameter<typeof customFetch>}\n): UseMutationOptions<Awaited<ReturnType<typeof updateJob>>, TError,{jobId: string;data: BodyType<JobUpdate>}, TContext> => {\n\nconst mutationKey = ['updateJob'];\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n      options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n      options\n      : {...options, mutation: {...options.mutation, mutationKey}}\n      : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n      const mutationFn: MutationFunction<Awaited<ReturnType<typeof updateJob>>, {jobId: string;data: BodyType<JobUpdate>}> = (props) => {\n          const {jobId,data} = props ?? {};\n\n          return  updateJob(jobId,data,requestOptions)\n        }\n\n\n\n\n\n\n  return  { mutationFn, ...mutationOptions }}\n\n    export type UpdateJobMutationResult = NonNullable<Awaited<ReturnType<typeof updateJob>>>\n    export type UpdateJobMutationBody = BodyType<JobUpdate>\n    export type UpdateJobMutationError = ErrorType<void>\n\n    /**\n * @summary Update job status or metadata\n */\nexport const useUpdateJob = <TError = ErrorType<void>,\n    TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof updateJob>>, TError,{jobId: string;data: BodyType<JobUpdate>}, TContext>, request?: SecondParameter<typeof customFetch>}\n ): UseMutationResult<\n        Awaited<ReturnType<typeof updateJob>>,\n        TError,\n        {jobId: string;data: BodyType<JobUpdate>},\n        TContext\n      > => {\n      return useMutation(getUpdateJobMutationOptions(options));\n    }\n\nexport const getSubmitDeliverableUrl = (jobId: string,) => {\n\n\n\n\n  return `/api/jobs/${jobId}/submit`\n}\n\n/**\n * Proxies the deliverable to the oracle for Gemini + Claude consensus\n * @summary Submit a deliverable for AI verification\n */\nexport const submitDeliverable = async (jobId: string,\n    deliverableInput: DeliverableInput, options?: RequestInit): Promise<SubmitResult> => {\n\n  return customFetch<SubmitResult>(getSubmitDeliverableUrl(jobId),\n  {\n    ...options,\n    method: 'POST',\n    headers: { 'Content-Type': 'application/json', ...options?.headers },\n    body: JSON.stringify(\n      deliverableInput,)\n  }\n);}\n\n\n\n\nexport const getSubmitDeliverableMutationOptions = <TError = ErrorType<void>,\n    TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof submitDeliverable>>, TError,{jobId: string;data: BodyType<DeliverableInput>}, TContext>, request?: SecondParameter<typeof customFetch>}\n): UseMutationOptions<Awaited<ReturnType<typeof submitDeliverable>>, TError,{jobId: string;data: BodyType<DeliverableInput>}, TContext> => {\n\nconst mutationKey = ['submitDeliverable'];\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n      options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n      options\n      : {...options, mutation: {...options.mutation, mutationKey}}\n      : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n      const mutationFn: MutationFunction<Awaited<ReturnType<typeof submitDeliverable>>, {jobId: string;data: BodyType<DeliverableInput>}> = (props) => {\n          const {jobId,data} = props ?? {};\n\n          return  submitDeliverable(jobId,data,requestOptions)\n        }\n\n\n\n\n\n\n  return  { mutationFn, ...mutationOptions }}\n\n    export type SubmitDeliverableMutationResult = NonNullable<Awaited<ReturnType<typeof submitDeliverable>>>\n    export type SubmitDeliverableMutationBody = BodyType<DeliverableInput>\n    export type SubmitDeliverableMutationError = ErrorType<void>\n\n    /**\n * @summary Submit a deliverable for AI verification\n */\nexport const useSubmitDeliverable = <TError = ErrorType<void>,\n    TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof submitDeliverable>>, TError,{jobId: string;data: BodyType<DeliverableInput>}, TContext>, request?: SecondParameter<typeof customFetch>}\n ): UseMutationResult<\n        Awaited<ReturnType<typeof submitDeliverable>>,\n        TError,\n        {jobId: string;data: BodyType<DeliverableInput>},\n        TContext\n      > => {\n      return useMutation(getSubmitDeliverableMutationOptions(options));\n    }\n\nexport const getGetStatsUrl = () => {\n\n\n\n\n  return `/api/stats`\n}\n\n/**\n * Returns counts of jobs by status and total escrowed amount\n * @summary Dashboard statistics\n */\nexport const getStats = async ( options?: RequestInit): Promise<DashboardStats> => {\n\n  return customFetch<DashboardStats>(getGetStatsUrl(),\n  {\n    ...options,\n    method: 'GET'\n\n\n  }\n);}\n\n\n\n\n\nexport const getGetStatsQueryKey = () => {\n    return [\n    `/api/stats`\n    ] as const;\n    }\n\n\nexport const getGetStatsQueryOptions = <TData = Awaited<ReturnType<typeof getStats>>, TError = ErrorType<unknown>>( options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getStats>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n  const queryKey =  queryOptions?.queryKey ?? getGetStatsQueryKey();\n\n\n\n    const queryFn: QueryFunction<Awaited<ReturnType<typeof getStats>>> = ({ signal }) => getStats({ signal, ...requestOptions });\n\n\n\n\n\n   return  { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof getStats>>, TError, TData> & { queryKey: QueryKey }\n}\n\nexport type GetStatsQueryResult = NonNullable<Awaited<ReturnType<typeof getStats>>>\nexport type GetStatsQueryError = ErrorType<unknown>\n\n\n/**\n * @summary Dashboard statistics\n */\n\nexport function useGetStats<TData = Awaited<ReturnType<typeof getStats>>, TError = ErrorType<unknown>>(\n  options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getStats>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n\n ):  UseQueryResult<TData, TError> & { queryKey: QueryKey } {\n\n  const queryOptions = getGetStatsQueryOptions(options)\n\n  const query = useQuery(queryOptions) as  UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n  return { ...query, queryKey: queryOptions.queryKey };\n}\n\n\n\n\n\n\n\nexport const getGetOracleHealthUrl = () => {\n\n\n\n\n  return `/api/oracle/health`\n}\n\n/**\n * Returns the oracle middleware health and pending job count\n * @summary Oracle health proxy\n */\nexport const getOracleHealth = async ( options?: RequestInit): Promise<OracleHealth> => {\n\n  return customFetch<OracleHealth>(getGetOracleHealthUrl(),\n  {\n    ...options,\n    method: 'GET'\n\n\n  }\n);}\n\n\n\n\n\nexport const getGetOracleHealthQueryKey = () => {\n    return [\n    `/api/oracle/health`\n    ] as const;\n    }\n\n\nexport const getGetOracleHealthQueryOptions = <TData = Awaited<ReturnType<typeof getOracleHealth>>, TError = ErrorType<void>>( options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getOracleHealth>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n  const queryKey =  queryOptions?.queryKey ?? getGetOracleHealthQueryKey();\n\n\n\n    const queryFn: QueryFunction<Awaited<ReturnType<typeof getOracleHealth>>> = ({ signal }) => getOracleHealth({ signal, ...requestOptions });\n\n\n\n\n\n   return  { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof getOracleHealth>>, TError, TData> & { queryKey: QueryKey }\n}\n\nexport type GetOracleHealthQueryResult = NonNullable<Awaited<ReturnType<typeof getOracleHealth>>>\nexport type GetOracleHealthQueryError = ErrorType<void>\n\n\n/**\n * @summary Oracle health proxy\n */\n\nexport function useGetOracleHealth<TData = Awaited<ReturnType<typeof getOracleHealth>>, TError = ErrorType<void>>(\n  options?: { query?:UseQueryOptions<Awaited<ReturnType<typeof getOracleHealth>>, TError, TData>, request?: SecondParameter<typeof customFetch>}\n\n ):  UseQueryResult<TData, TError> & { queryKey: QueryKey } {\n\n  const queryOptions = getGetOracleHealthQueryOptions(options)\n\n  const query = useQuery(queryOptions) as  UseQueryResult<TData, TError> & { queryKey: QueryKey };\n\n  return { ...query, queryKey: queryOptions.queryKey };\n}\n\n\n\n\n\n\n\n"}