{"path":"lib/api-zod/src/generated/api.ts","size":4787,"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 * as zod from 'zod';\n\n\n/**\n * Returns server health status\n * @summary Health check\n */\nexport const HealthCheckResponse = zod.object({\n  \"status\": zod.string()\n})\n\n\n/**\n * Returns all registered escrow jobs\n * @summary List all jobs\n */\nexport const ListJobsQueryParams = zod.object({\n  \"status\": zod.enum(['pending', 'completed', 'cancelled']).optional(),\n  \"clientPubkey\": zod.coerce.string().optional()\n})\n\nexport const ListJobsResponseItem = zod.object({\n  \"id\": zod.number(),\n  \"jobId\": zod.string(),\n  \"clientPubkey\": zod.string(),\n  \"freelancerPubkey\": zod.string(),\n  \"oraclePubkey\": zod.string(),\n  \"amountLamports\": zod.string().describe('Amount in lamports as string (u64 safe)'),\n  \"status\": zod.enum(['pending', 'completed', 'cancelled']),\n  \"description\": zod.string().nullable(),\n  \"acceptanceCriteria\": zod.string().nullable().describe('JSON-encoded array of criteria strings'),\n  \"txSig\": zod.string().nullable().describe('Most recent transaction signature'),\n  \"createdAt\": zod.coerce.date(),\n  \"updatedAt\": zod.coerce.date()\n})\nexport const ListJobsResponse = zod.array(ListJobsResponseItem)\n\n\n/**\n * Cache an on-chain job in the database after initialization\n * @summary Register a job\n */\nexport const createJobBodyJobIdMax = 32;\n\n\n\nexport const CreateJobBody = zod.object({\n  \"jobId\": zod.string().max(createJobBodyJobIdMax),\n  \"clientPubkey\": zod.string(),\n  \"freelancerPubkey\": zod.string(),\n  \"oraclePubkey\": zod.string(),\n  \"amountLamports\": zod.string(),\n  \"description\": zod.string().optional(),\n  \"acceptanceCriteria\": zod.array(zod.string()).optional()\n})\n\n\n/**\n * @summary Get a job by jobId\n */\nexport const GetJobParams = zod.object({\n  \"jobId\": zod.coerce.string()\n})\n\nexport const GetJobResponse = zod.object({\n  \"id\": zod.number(),\n  \"jobId\": zod.string(),\n  \"clientPubkey\": zod.string(),\n  \"freelancerPubkey\": zod.string(),\n  \"oraclePubkey\": zod.string(),\n  \"amountLamports\": zod.string().describe('Amount in lamports as string (u64 safe)'),\n  \"status\": zod.enum(['pending', 'completed', 'cancelled']),\n  \"description\": zod.string().nullable(),\n  \"acceptanceCriteria\": zod.string().nullable().describe('JSON-encoded array of criteria strings'),\n  \"txSig\": zod.string().nullable().describe('Most recent transaction signature'),\n  \"createdAt\": zod.coerce.date(),\n  \"updatedAt\": zod.coerce.date()\n})\n\n\n/**\n * @summary Update job status or metadata\n */\nexport const UpdateJobParams = zod.object({\n  \"jobId\": zod.coerce.string()\n})\n\nexport const UpdateJobBody = zod.object({\n  \"status\": zod.enum(['pending', 'completed', 'cancelled']).optional(),\n  \"txSig\": zod.string().optional(),\n  \"description\": zod.string().optional()\n})\n\nexport const UpdateJobResponse = zod.object({\n  \"id\": zod.number(),\n  \"jobId\": zod.string(),\n  \"clientPubkey\": zod.string(),\n  \"freelancerPubkey\": zod.string(),\n  \"oraclePubkey\": zod.string(),\n  \"amountLamports\": zod.string().describe('Amount in lamports as string (u64 safe)'),\n  \"status\": zod.enum(['pending', 'completed', 'cancelled']),\n  \"description\": zod.string().nullable(),\n  \"acceptanceCriteria\": zod.string().nullable().describe('JSON-encoded array of criteria strings'),\n  \"txSig\": zod.string().nullable().describe('Most recent transaction signature'),\n  \"createdAt\": zod.coerce.date(),\n  \"updatedAt\": zod.coerce.date()\n})\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 SubmitDeliverableParams = zod.object({\n  \"jobId\": zod.coerce.string()\n})\n\nexport const SubmitDeliverableBody = zod.object({\n  \"description\": zod.string(),\n  \"acceptanceCriteria\": zod.array(zod.string()),\n  \"deliverable\": zod.string(),\n  \"deliverableType\": zod.enum(['url', 'ipfs', 'text', 'json'])\n})\n\nexport const SubmitDeliverableResponse = zod.object({\n  \"success\": zod.boolean(),\n  \"jobId\": zod.string(),\n  \"outcome\": zod.union([zod.literal('RELEASE'),zod.literal('REFUND'),zod.literal('ESCALATE'),zod.literal(null)]).nullable(),\n  \"txSig\": zod.string().nullable(),\n  \"error\": zod.string().nullable()\n})\n\n\n/**\n * Returns counts of jobs by status and total escrowed amount\n * @summary Dashboard statistics\n */\nexport const GetStatsResponse = zod.object({\n  \"total\": zod.number(),\n  \"pending\": zod.number(),\n  \"completed\": zod.number(),\n  \"cancelled\": zod.number(),\n  \"totalEscrowedLamports\": zod.string().describe('Sum of pending escrow amounts as string')\n})\n\n\n/**\n * Returns the oracle middleware health and pending job count\n * @summary Oracle health proxy\n */\nexport const GetOracleHealthResponse = zod.object({\n  \"status\": zod.string(),\n  \"pendingJobs\": zod.number(),\n  \"timestamp\": zod.string()\n})\n\n\n"}