export type ShareMode = 'plain' | 'encrypted-merged' | 'encrypted-separate';
export interface SplitOptions {
    total: number;
    threshold: number;
    encrypt?: boolean;
    mergeShares?: boolean;
}
export interface SplitResult {
    mode: ShareMode;
    shares: string[];
    keyShares?: string[];
}
export interface ReconstructOptions {
    threshold?: number;
    originalSize?: number;
    keyShares?: string[];
}
/**
 * Split data into shares using SSDP+ protocol.
 *
 * Modes:
 *   - plain              (encrypt=false): raw Shamir SSS
 *   - encrypted-merged   (encrypt=true, mergeShares=true): each share bundles keyShare+dataShare
 *   - encrypted-separate (encrypt=true, mergeShares=false): separate keyShares[] + dataShares[]
 */
export declare function split(data: Uint8Array, options: SplitOptions): Promise<SplitResult>;
/**
 * Reconstruct data from shares.
 *
 * Auto-detects share mode from content.
 * For encrypted-separate, pass keyShares in options.
 */
export declare function reconstruct(shares: string[], options?: ReconstructOptions): Promise<Uint8Array>;
