import type { HybridTimestamp } from '../../types/time.js'; import type { ProvisionalStatement, AgentDID, PrincipalDID, Ed25519Signature } from './types.js'; /** Canonical payload an author signs to attest a provisional statement. * Verifiers reconstruct this exact payload to check author_signature. */ export declare function statementSigningPayload(s: { id: string; version: '1.0'; author: AgentDID; author_principal: PrincipalDID; content: string; created_at: HybridTimestamp; dead_man_expires_at?: HybridTimestamp; }): string; export interface CreateProvisionalParams { author: AgentDID; author_principal: PrincipalDID; content: string; /** Ed25519 private key (hex) controlling the author DID. */ authorPrivateKey: string; /** Gateway id used to stamp the hybrid timestamp. */ gatewayId: string; /** Optional dead-man expiry. Construct via createHybridTimestamp or pass through. */ dead_man_expires_at?: HybridTimestamp; /** Override id for test determinism. */ id?: string; } export declare function createProvisional(params: CreateProvisionalParams): ProvisionalStatement; /** Returns true only for promoted statements with a verifying promotion. * Provisional and withdrawn statements are never binding. This check * does not re-verify the PromotionEvent signature — use verifyPromotion * for the full cryptographic check. */ export declare function isBinding(statement: ProvisionalStatement): boolean; /** Verify the author's signature over the statement's signed fields. * Returns false if the content or any signed field was tampered with * after signing. */ export declare function verifyAuthorSignature(statement: ProvisionalStatement): boolean; /** Withdraw a provisional statement. The caller must supply a signature * from the author over the withdrawal payload. Already-promoted * statements cannot be withdrawn. */ export declare function withdrawProvisional(statement: ProvisionalStatement, author_sig: Ed25519Signature): ProvisionalStatement; /** Compute the withdrawal payload an author must sign. */ export declare function withdrawalPayload(statement_id: string): string; //# sourceMappingURL=create.d.ts.map