export type DraftPreviewFinalizerDraft = { flush: () => Promise; id: () => TId | undefined; seal?: () => Promise; discardPending?: () => Promise; clear: () => Promise; }; export type DraftPreviewFinalizerResult = "normal-delivered" | "normal-skipped" | "preview-finalized"; export declare function deliverFinalizableDraftPreview(params: { kind: "tool" | "block" | "final"; payload: TPayload; draft?: DraftPreviewFinalizerDraft; buildFinalEdit: (payload: TPayload) => TEdit | undefined; editFinal: (id: TId, edit: TEdit) => Promise; deliverNormally: (payload: TPayload) => Promise; onPreviewFinalized?: (id: TId) => Promise | void; onNormalDelivered?: () => Promise | void; logPreviewEditFailure?: (error: unknown) => void; }): Promise;