export type PodModelDescriptorSource = 'official' | 'verified-community' | 'developer' | 'user'; export type PodModelDescriptorTrustLevel = 'high' | 'medium' | 'low'; export type PodModelFieldType = 'string' | 'text' | 'number' | 'boolean' | 'timestamp' | 'uri' | 'json'; export type PodModelMergePolicy = 'create-only' | 'upsert' | 'patch' | 'append'; export interface PodModelFieldDescriptor { type: PodModelFieldType; predicate: string; required?: boolean; secret?: boolean; array?: boolean; description?: string; } export interface PodModelDescriptor { uri: string; version: string; source: PodModelDescriptorSource; trustLevel: PodModelDescriptorTrustLevel; namespace: string; class: string; resourceKind: string; description: string; storage: { base: string; resourceIdPattern: string; }; fields: Record; uniqueBy: string[]; writableFields: string[]; mergePolicy: PodModelMergePolicy; examples: Array<{ request: string; match: Record; }>; } export interface PodStorageMutationPlan { id: string; schemaUri: string; operation: 'upsert'; resourceId: string; resourceUri: string; match: Record; set: Record; summary: string; } export type PodStorageValidationResult = { ok: true; plan: PodStorageMutationPlan; } | { ok: false; error: { code: string; message: string; }; }; export type PodStorageCommitResult = { ok: true; resource: Record; } | { ok: false; error: { code: string; message: string; }; }; export interface PodSchemaClassEntry { schemaUri: string; resourceKind: string; class: string; namespace: string; source: PodModelDescriptorSource; trustLevel: PodModelDescriptorTrustLevel; description: string; } export interface PodSchemaPredicateEntry { schemaUri: string; field: string; predicate: string; type: PodModelFieldType; required: boolean; secret: boolean; array: boolean; description?: string; } export interface PodSchemaSearchEntry { uri: string; resourceKind: string; class: string; namespace: string; source: PodModelDescriptorSource; trustLevel: PodModelDescriptorTrustLevel; description: string; score: number; matchedFields: string[]; } export declare const credentialDescriptor: PodModelDescriptor; export declare const gatewayAccessKeyDescriptor: PodModelDescriptor; export declare const quotaSnapshotDescriptor: PodModelDescriptor; export declare const approvalDescriptor: PodModelDescriptor; export declare const inputRequestDescriptor: PodModelDescriptor; export declare const captureCandidateDescriptor: PodModelDescriptor; export declare const captureEventDescriptor: PodModelDescriptor; export declare const contactDescriptor: PodModelDescriptor; export declare const chatDescriptor: PodModelDescriptor; export declare const threadDescriptor: PodModelDescriptor; export declare const messageDescriptor: PodModelDescriptor; export declare const ideaDescriptor: PodModelDescriptor; export declare const issueDescriptor: PodModelDescriptor; export declare const taskDescriptor: PodModelDescriptor; export declare const scheduleDescriptor: PodModelDescriptor; export declare const automationRuleDescriptor: PodModelDescriptor; export declare const deliveryDescriptor: PodModelDescriptor; export declare const runDescriptor: PodModelDescriptor; export declare const runStepDescriptor: PodModelDescriptor; export declare const evidenceDescriptor: PodModelDescriptor; export declare const reportDescriptor: PodModelDescriptor; export declare const sessionDescriptor: PodModelDescriptor; export declare const officialPodModelDescriptors: readonly [PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor, PodModelDescriptor]; export declare function createPodModelDescriptorRegistry(descriptors?: readonly PodModelDescriptor[]): { list(filter?: { source?: PodModelDescriptorSource; resourceKind?: string; }): PodModelDescriptor[]; describe(uri: string): PodModelDescriptor | null; }; export declare const podSchema: { list: (filter?: { source?: PodModelDescriptorSource; resourceKind?: string; }) => PodModelDescriptor[]; describe(uriOrInput: string | { uri: string; } | { schemaUri: string; }): PodModelDescriptor | null; classes(input?: { uri?: string; schemaUri?: string; }): PodSchemaClassEntry[]; search(input: { query: string; source?: PodModelDescriptorSource; resourceKind?: string; limit?: number; }): PodSchemaSearchEntry[]; predicates(input?: { uri?: string; schemaUri?: string; field?: string; }): PodSchemaPredicateEntry[]; }; export declare function createPodSchema(registry?: { list(filter?: { source?: PodModelDescriptorSource; resourceKind?: string; }): PodModelDescriptor[]; describe(uri: string): PodModelDescriptor | null; }): { list: (filter?: { source?: PodModelDescriptorSource; resourceKind?: string; }) => PodModelDescriptor[]; describe(uriOrInput: string | { uri: string; } | { schemaUri: string; }): PodModelDescriptor | null; classes(input?: { uri?: string; schemaUri?: string; }): PodSchemaClassEntry[]; search(input: { query: string; source?: PodModelDescriptorSource; resourceKind?: string; limit?: number; }): PodSchemaSearchEntry[]; predicates(input?: { uri?: string; schemaUri?: string; field?: string; }): PodSchemaPredicateEntry[]; }; export declare function createPodStorage(registry?: { list(filter?: { source?: PodModelDescriptorSource; resourceKind?: string; }): PodModelDescriptor[]; describe(uri: string): PodModelDescriptor | null; }, store?: Map>): { validate(input: { schemaUri?: string; operation: "upsert"; match: Record; set?: Record; }): PodStorageValidationResult; commit(input: { planId: string; }): PodStorageCommitResult; read(input: { resourceUri: string; }): PodStorageCommitResult; store: Map>; plans: Map; };