bigblocks
Version:
Complete Bitcoin UI component library - authentication, social, wallet, market, inscriptions, and blockchain interactions for React
72 lines • 1.71 kB
TypeScript
export type SigningMode = "sign" | "verify" | "both";
export interface SignedFile {
file: File;
signature: string;
address: string;
identityKey: string;
timestamp: Date;
status: "pending" | "signed" | "verified" | "invalid" | "error";
error?: string;
}
export interface FileSigningResult {
success: boolean;
signature?: string;
address?: string;
fileHash?: string;
metadata?: Record<string, unknown>;
error?: Error;
}
export interface FileVerificationResult {
valid: boolean;
address?: string;
identityKey?: string;
fileHash?: string;
error?: string;
}
export interface BapFileSignerProps {
/**
* The BAP instance for signing
*/
bapInstance: import("./identity.js").ExtendedBAP;
/**
* Mode of operation
*/
mode?: SigningMode;
/**
* Callback when files are signed
*/
onFilesSigned?: (results: SignedFile[]) => void;
/**
* Callback when file is verified
*/
onFileVerified?: (result: FileVerificationResult) => void;
/**
* Whether to anchor signatures on blockchain
*/
blockchainAnchor?: boolean;
/**
* Maximum file size in bytes (default: 10MB)
*/
maxFileSize?: number;
/**
* Accepted file types
*/
acceptedTypes?: string[];
/**
* Theme variant
*/
variant?: "surface" | "ghost" | "classic";
/**
* Component size
*/
size?: "1" | "2" | "3";
}
export interface SigningOptions {
blockchainAnchor?: boolean;
includePubKey?: boolean;
protocol?: "bap" | "raw";
}
export interface UseBapSigningOptions {
autoVerify?: boolean;
}
//# sourceMappingURL=signing.d.ts.map