import { ExportableEd25519InitKeygenResult, ExportableEd25519KeygenResult, DynamicNativeSdkInterface } from './';
export declare class ExportableEd25519 {
        protected readonly NATIVE: Promise<DynamicNativeSdkInterface>;
        protected readonly URL: string;
        protected constructor(native: Promise<DynamicNativeSdkInterface>, url: string);
        initKeygen(): Promise<ExportableEd25519InitKeygenResult>;
        exportID(keygenResult: ExportableEd25519KeygenResult | string): Promise<string>;
        createRoom(numParties: number, apiKey: string): Promise<string>;
        sampleKey(roomUuid: string, numParties: number, threshold: number, keygenInit: ExportableEd25519InitKeygenResult, keygenIds: string[]): Promise<ExportableEd25519KeygenResult>;
    receiveKey(roomUuid: string, numParties: number, threshold: number, keygenInit: ExportableEd25519InitKeygenResult, keygenIds: string[]): Promise<ExportableEd25519KeygenResult>;
        sign(roomUuid: string, keygenResult: ExportableEd25519KeygenResult | string, msg: Uint8Array | string): Promise<Uint8Array>;
        refresh(roomUuid: string, keygenResult: ExportableEd25519KeygenResult | string): Promise<ExportableEd25519KeygenResult>;
        reshareNewParty(roomUuid: string, oldThreshold: number, newThreshold: number, keygenInit: ExportableEd25519InitKeygenResult, keygenIds: string[]): Promise<ExportableEd25519KeygenResult>;
        reshareRemainingParty(roomUuid: string, newThreshold: number, keygenResult: ExportableEd25519KeygenResult | string, keygenIds: string[]): Promise<ExportableEd25519KeygenResult>;
        exportFullPrivateKey(roomUuid: string, keygenResult: ExportableEd25519KeygenResult | string, toExportID: string): Promise<string | undefined>;
        offlineExportFullPrivateKey(keygenResults: ExportableEd25519KeygenResult[] | string[]): Promise<string>;
        importPrivateKeyRecipient(roomUuid: string, threshold: number, keygenInit: ExportableEd25519InitKeygenResult, keygenIds: string[]): Promise<ExportableEd25519KeygenResult>;
        importPrivateKeyImporter(roomUuid: string, threshold: number, privateKey: string, keygenInit: ExportableEd25519InitKeygenResult, keygenIds: string[]): Promise<ExportableEd25519KeygenResult>;
        getPubkey(keygenResult: ExportableEd25519KeygenResult | string): Promise<string>;
}
