import type { ProviderAdapter, RedactionMetadata, WarningMetadata } from './types'; export declare const providerExecutableSchemaVersion: 1; export interface ContractErrorObject { readonly code: string; readonly message: string; readonly field?: string; readonly classification?: unknown; } export interface ContractEvidence { readonly [key: string]: unknown; } interface ContractEnvelopeBase { readonly schemaVersion: 1; readonly command: string | null; readonly provider: string | null; readonly adapterVersion: string | null; readonly warnings: readonly WarningMetadata[]; readonly redactions: readonly RedactionMetadata[]; readonly evidence: ContractEvidence; } export interface ContractSuccessEnvelope extends ContractEnvelopeBase { readonly ok: true; readonly result: Result; } export interface ContractErrorEnvelope extends ContractEnvelopeBase { readonly ok: false; readonly error: ContractErrorObject; } export type ContractEnvelope = ContractSuccessEnvelope | ContractErrorEnvelope; export declare function finalizeEnvelope(envelope: ContractEnvelope, env: Readonly>): ContractEnvelope; export declare function successEnvelope(input: { readonly command: string; readonly adapter: ProviderAdapter; readonly result: Result; readonly warnings?: readonly WarningMetadata[]; readonly redactions?: readonly RedactionMetadata[]; readonly evidence?: ContractEvidence; }): ContractSuccessEnvelope; export declare function errorEnvelope(input: { readonly command: string | null; readonly provider: string | null; readonly adapterVersion?: string | null; readonly error: ContractErrorObject; readonly warnings?: readonly WarningMetadata[]; readonly redactions?: readonly RedactionMetadata[]; readonly evidence?: ContractEvidence; }): ContractErrorEnvelope; export {}; //# sourceMappingURL=contract-envelope.d.ts.map