export interface Receipt {
    id: string;
    originalFile: string;
    receiptFile: string;
    status: string;
    signingStatus?: string;
    notarizationStatus?: string;
    signingError?: string;
    notarizationError?: string;
    error?: string;
    createdAt: string;
    updatedAt: string;
}
type ReceiptWatcherEvent = "*" | "file-added" | "file-signed" | "file-notarized" | "file-completed" | "all-files-signed" | "all-files-completed";
interface ReceiptWatcher {
    addFile: (someFilePath: string) => Promise<Receipt>;
    start: () => Promise<void>;
    getReceipts: () => Promise<Receipt[]>;
    getReceipt: (identifier: string) => Promise<Receipt>;
    isFileSigned: (identifier: string) => Promise<boolean>;
    isFileCompleted: (identifier: string) => Promise<boolean>;
    allFilesSigned: () => Promise<boolean>;
    allFilesCompleted: () => Promise<boolean>;
    whenAllFilesSigned: () => Promise<void>;
    whenAllFilesCompleted: () => Promise<void>;
    stop: () => Promise<void>;
    cleanup: () => Promise<void>;
    on: (event: ReceiptWatcherEvent, callback: (eventData: any) => void) => void;
}
export declare const receiptWatcher: (someFolderPath: string) => ReceiptWatcher;
export {};
