/// import { IRequestTracer } from '../../api'; import { KeyPair, KeychainsTriplet } from '../baseCoin'; import { IWallet } from '../wallet'; export declare type KeyType = 'tss' | 'independent' | 'blsdkg'; export interface Keychain { id: string; pub: string; prv?: string; provider?: string; encryptedPrv?: string; derivationPath?: string; derivedFromParentWithSeed?: string; commonPub?: string; commonKeychain?: string; keyShares?: KeyShare[]; } export interface ChangedKeychains { [pubkey: string]: string; } export interface ListKeychainsResult { keys: Keychain[]; nextBatchPrevId?: string; } export interface GetKeychainOptions { id: string; xpub?: string; ethAddress?: string; reqId?: IRequestTracer; } export interface ListKeychainOptions { limit?: number; prevId?: string; } export interface UpdatePasswordOptions { oldPassword: string; newPassword: string; } export interface UpdateSingleKeychainPasswordOptions { keychain?: Keychain; oldPassword?: string; newPassword?: string; } export interface AddKeychainOptions { pub?: string; commonPub?: string; commonKeychain?: string; encryptedPrv?: string; type?: string; keyType?: KeyType; source?: string; originalPasscodeEncryptionCode?: string; enterprise?: string; derivedFromParentWithSeed?: any; disableKRSEmail?: boolean; provider?: string; reqId?: IRequestTracer; krsSpecific?: any; keyShares?: KeyShare[]; userGPGPublicKey?: string; backupGPGPublicKey?: string; } interface KeyShare { from: string; to: string; publicShare: string; privateShare: string; n?: string; } export interface CreateBackupOptions { provider?: string; source?: string; disableKRSEmail?: boolean; krsSpecific?: any; type?: string; keyType?: KeyType; reqId?: IRequestTracer; commonPub?: string; commonKeychain?: string; prv?: string; encryptedPrv?: string; } export interface CreateBitGoOptions { source?: 'bitgo'; enterprise?: string; reqId?: IRequestTracer; keyType?: KeyType; } export interface CreateMpcOptions { multisigType: 'onchain' | 'tss' | 'blsdkg'; passphrase?: string; originalPasscodeEncryptionCode?: string; enterprise?: string; } export interface GetKeysForSigningOptions { reqId?: IRequestTracer; wallet?: IWallet; } export declare enum KeyIndices { USER = 0, BACKUP = 1, BITGO = 2 } export interface IKeychains { get(params: GetKeychainOptions): Promise; list(params?: ListKeychainOptions): Promise; updatePassword(params: UpdatePasswordOptions): Promise; updateSingleKeychainPassword(params?: UpdateSingleKeychainPasswordOptions): Keychain; create(params?: { seed?: Buffer; }): KeyPair; add(params?: AddKeychainOptions): Promise; createBitGo(params?: CreateBitGoOptions): Promise; createBackup(params?: CreateBackupOptions): Promise; getKeysForSigning(params?: GetKeysForSigningOptions): Promise; createMpc(params: CreateMpcOptions): Promise; } export {}; //# sourceMappingURL=iKeychains.d.ts.map