import { GetWalletResponse, WalletRecoveryState } from '@dynamic-labs-wallet/browser-wallet-client'; import { MFAAction, SignMessageContext, TokenScope } from '@dynamic-labs/sdk-api-core'; import { WalletConnectorBase } from '..'; interface GetMfaTokenFunction { (props?: { mfaAction?: MFAAction; }): Promise; } export type GetElevatedAccessTokenFunction = (params: { scope: TokenScope; }) => Promise; export type GetWalletPasswordFn = (props: { accountAddress: string; chainName: string; }) => Promise; export interface IDynamicWaasConnector extends WalletConnectorBase { setWaasAuthMode(authMode: 'cookie' | 'header'): void; setGetWalletPasswordFunction(getWalletPassword: GetWalletPasswordFn): void; getPasswordIfNeeded(props: { accountAddress: string; }): Promise; createWalletAccount(options?: { thresholdSignatureScheme?: string; password?: string; bitcoinConfig?: { addressType?: string; network?: string; }; }): Promise<{ accountAddress: string; publicKeyHex: string; rawPublicKey: string | Uint8Array | undefined; }>; importPrivateKey({ privateKey, chainName, thresholdSignatureScheme, publicAddressCheck, addressType, legacyWalletId, password, }: { privateKey: string; chainName: string; thresholdSignatureScheme?: string; publicAddressCheck?: string; addressType?: string; legacyWalletId?: string; password?: string; }): Promise; exportPrivateKey({ accountAddress, displayContainer, }: { accountAddress: string; displayContainer?: HTMLIFrameElement; }): Promise; setEnvironmentId(environmentId: string): void; setBaseApiUrl(baseApiUrl: string): void; setBaseClientKeysharesRelayApiUrl(baseClientKeysharesRelayApiUrl?: string): void; setGetAuthTokenFunction(getAuthToken: () => string): void; setGetSignedSessionIdFunction(getSignedSessionId: () => Promise): void; setGetMfaTokenFunction(getMfaToken: GetMfaTokenFunction): void; setGetElevatedAccessTokenFunction(getElevatedAccessToken: GetElevatedAccessTokenFunction): void; setRelayUrl(relayUrl: string): void; getWalletClientByAddress({ accountAddress }: { accountAddress: string; }): any; backupKeySharesToICloud({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; displayICloudSignIn({ displayContainer, }: { displayContainer: HTMLElement; }): Promise; hideICloudSignIn(): Promise; isICloudAuthenticated(): Promise; backupKeySharesToGoogleDrive({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; exportClientKeysharesFromGoogleDrive({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; delegateKeyShares({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; revokeDelegation({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; refreshWalletAccountShares({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; reshareWalletAccountShares({ accountAddress, thresholdSignatureScheme, password, }: { accountAddress: string; thresholdSignatureScheme: string; password?: string; }): Promise; setPassword({ accountAddress, newPassword, }: { accountAddress: string; newPassword: string; }): Promise; updatePassword({ accountAddress, existingPassword, newPassword, }: { accountAddress: string; existingPassword?: string; newPassword: string; }): Promise; unlockWallet({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; getWalletRecoveryState({ accountAddress, }: { accountAddress: string; }): Promise; signRawMessage({ accountAddress, message, password, }: { accountAddress: string; message: string; password?: string; }): Promise; exportClientKeyshares({ accountAddress, password, }: { accountAddress: string; password?: string; }): Promise; signMessageWithContext({ message, context, }: { message: string | { raw: string; }; context: SignMessageContext; }): Promise; getWaasWalletClient(): Promise; } export {};