UNPKG

@vfarcic/dot-ai

Version:

AI-powered development productivity platform that enhances software development workflows through intelligent automation and AI-driven assistance

173 lines 6.05 kB
/** * Common REST API Response Schemas * * Base schemas used by all REST API endpoints. * PRD #354: REST API Route Registry with Auto-Generated OpenAPI and Test Fixtures */ import { z } from 'zod'; /** * Response metadata schema */ export declare const MetaSchema: z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>; export type Meta = z.infer<typeof MetaSchema>; /** * Error details schema */ export declare const ErrorDetailsSchema: z.ZodObject<{ code: z.ZodString; message: z.ZodString; details: z.ZodOptional<z.ZodAny>; }, z.core.$strip>; export type ErrorDetails = z.infer<typeof ErrorDetailsSchema>; /** * Base REST API response schema * All endpoint responses extend this structure */ export declare const RestApiResponseSchema: z.ZodObject<{ success: z.ZodBoolean; data: z.ZodOptional<z.ZodAny>; error: z.ZodOptional<z.ZodObject<{ code: z.ZodString; message: z.ZodString; details: z.ZodOptional<z.ZodAny>; }, z.core.$strip>>; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>; export type RestApiResponse = z.infer<typeof RestApiResponseSchema>; /** * Success response factory - creates a typed success response schema */ export declare function createSuccessResponseSchema<T extends z.ZodTypeAny>(dataSchema: T): z.ZodObject<{ success: z.ZodLiteral<true>; data: T; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>; /** * Error response schema for failed requests */ export declare const ErrorResponseSchema: z.ZodObject<{ success: z.ZodLiteral<false>; error: z.ZodObject<{ code: z.ZodString; message: z.ZodString; details: z.ZodOptional<z.ZodAny>; }, z.core.$strip>; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; }, z.core.$strip>; export type ErrorResponse = z.infer<typeof ErrorResponseSchema>; /** * Common error response schemas by HTTP status */ export declare const NotFoundErrorSchema: z.ZodObject<{ success: z.ZodLiteral<false>; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; error: z.ZodObject<{ message: z.ZodString; details: z.ZodOptional<z.ZodAny>; code: z.ZodLiteral<"NOT_FOUND">; }, z.core.$strip>; }, z.core.$strip>; export declare const BadRequestErrorSchema: z.ZodObject<{ success: z.ZodLiteral<false>; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; error: z.ZodObject<{ message: z.ZodString; details: z.ZodOptional<z.ZodAny>; code: z.ZodEnum<{ BAD_REQUEST: "BAD_REQUEST"; INVALID_REQUEST: "INVALID_REQUEST"; MISSING_PARAMETER: "MISSING_PARAMETER"; INVALID_PARAMETER: "INVALID_PARAMETER"; VALIDATION_ERROR: "VALIDATION_ERROR"; }>; }, z.core.$strip>; }, z.core.$strip>; export declare const MethodNotAllowedErrorSchema: z.ZodObject<{ success: z.ZodLiteral<false>; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; error: z.ZodObject<{ message: z.ZodString; details: z.ZodOptional<z.ZodAny>; code: z.ZodLiteral<"METHOD_NOT_ALLOWED">; }, z.core.$strip>; }, z.core.$strip>; export declare const ServiceUnavailableErrorSchema: z.ZodObject<{ success: z.ZodLiteral<false>; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; error: z.ZodObject<{ message: z.ZodString; details: z.ZodOptional<z.ZodAny>; code: z.ZodEnum<{ AI_NOT_CONFIGURED: "AI_NOT_CONFIGURED"; PLUGIN_UNAVAILABLE: "PLUGIN_UNAVAILABLE"; VECTOR_DB_UNAVAILABLE: "VECTOR_DB_UNAVAILABLE"; SERVICE_UNAVAILABLE: "SERVICE_UNAVAILABLE"; }>; }, z.core.$strip>; }, z.core.$strip>; export declare const InternalServerErrorSchema: z.ZodObject<{ success: z.ZodLiteral<false>; meta: z.ZodOptional<z.ZodObject<{ timestamp: z.ZodString; requestId: z.ZodOptional<z.ZodString>; version: z.ZodString; }, z.core.$strip>>; error: z.ZodObject<{ message: z.ZodString; details: z.ZodOptional<z.ZodAny>; code: z.ZodEnum<{ INTERNAL_ERROR: "INTERNAL_ERROR"; DISCOVERY_ERROR: "DISCOVERY_ERROR"; EXECUTION_ERROR: "EXECUTION_ERROR"; OPENAPI_ERROR: "OPENAPI_ERROR"; SYNC_ERROR: "SYNC_ERROR"; RESOURCE_KINDS_ERROR: "RESOURCE_KINDS_ERROR"; SEARCH_ERROR: "SEARCH_ERROR"; LIST_RESOURCES_ERROR: "LIST_RESOURCES_ERROR"; NAMESPACES_ERROR: "NAMESPACES_ERROR"; RESOURCE_ERROR: "RESOURCE_ERROR"; EVENTS_ERROR: "EVENTS_ERROR"; LOGS_ERROR: "LOGS_ERROR"; PROMPTS_LIST_ERROR: "PROMPTS_LIST_ERROR"; PROMPT_GET_ERROR: "PROMPT_GET_ERROR"; VISUALIZATION_ERROR: "VISUALIZATION_ERROR"; SESSION_RETRIEVAL_ERROR: "SESSION_RETRIEVAL_ERROR"; MIGRATION_ERROR: "MIGRATION_ERROR"; PROMPTS_CACHE_REFRESH_ERROR: "PROMPTS_CACHE_REFRESH_ERROR"; USER_MANAGEMENT_ERROR: "USER_MANAGEMENT_ERROR"; }>; }, z.core.$strip>; }, z.core.$strip>; //# sourceMappingURL=common.d.ts.map