import { z } from "zod"; /** Source credentials can submit evidence and feedback for one source only. */ export declare const LearningSourceCredentialSchema: z.ZodObject<{ id: z.ZodString; scope: z.ZodString; sourceId: z.ZodString; name: z.ZodString; keyPrefix: z.ZodString; createdAt: z.ZodISODateTime; expiresAt: z.ZodISODateTime; revokedAt: z.ZodNullable; }, z.core.$strict>; export type LearningSourceCredential = z.infer; export declare const LearningSourceCredentialSecretSchema: z.ZodString; export declare const LearningSourceCredentialRequestSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{ action: z.ZodLiteral<"create">; scope: z.ZodString; sourceId: z.ZodString; name: z.ZodString; expiresAt: z.ZodISODateTime; operationId: z.ZodString; apiKey: z.ZodString; }, z.core.$strict>, z.ZodObject<{ action: z.ZodLiteral<"list">; scope: z.ZodString; sourceId: z.ZodString; afterId: z.ZodOptional; limit: z.ZodDefault; }, z.core.$strict>, z.ZodObject<{ action: z.ZodLiteral<"revoke">; scope: z.ZodString; sourceId: z.ZodString; id: z.ZodString; }, z.core.$strict>], "action">; export type LearningSourceCredentialRequest = z.infer; export declare const LearningSourceCredentialCreatedSchema: z.ZodObject<{ credential: z.ZodObject<{ id: z.ZodString; scope: z.ZodString; sourceId: z.ZodString; name: z.ZodString; keyPrefix: z.ZodString; createdAt: z.ZodISODateTime; expiresAt: z.ZodISODateTime; revokedAt: z.ZodNullable; }, z.core.$strict>; apiKey: z.ZodString; }, z.core.$strict>; export declare const LearningSourceCredentialPageSchema: z.ZodObject<{ items: z.ZodArray; }, z.core.$strict>>; nextCursor: z.ZodNullable; }, z.core.$strict>; export declare const LearningSourceConfigurationRequestSchema: z.ZodObject<{ scope: z.ZodString; sourceId: z.ZodString; }, z.core.$strict>; export declare const LearningSourceConfigurationSchema: z.ZodObject<{ scope: z.ZodString; source: z.ZodObject<{ id: z.ZodString; contentHash: z.ZodString; revision: z.ZodNumber; }, z.core.$strict>; taskDefinition: z.ZodObject<{ id: z.ZodString; contentHash: z.ZodString; revision: z.ZodNumber; }, z.core.$strict>; enabled: z.ZodBoolean; allowedSplits: z.ZodArray>; }, z.core.$strict>; /** Keep this request in memory for retries. Hosts persist hashes, never its secret. */ export declare function createSourceCredentialRequest(input: { sourceId: string; name: string; expiresAt: string; }): { sourceId: string; name: string; expiresAt: string; operationId: `${string}-${string}-${string}-${string}-${string}`; apiKey: string; }; /** Hosts enforce expiry when issuing and authenticating; tokens are never permanent. */ export declare function assertLearningCredentialExpiry(expiresAt: string, now: Date): void; //# sourceMappingURL=learning-credentials.d.ts.map