import { EVMContractAddress, BlockchainCommonErrors, SnickerdoodleWalletContractError, EVMAccountAddress, WebauthnCredentialId, P256SignatureComponents, ClientDataJSONComponents, AuthenticatorData, P256PublicKeyComponents } from "@snickerdoodlelabs/objects"; import { ResultAsync } from "neverthrow"; import { IBaseContract } from "../interfaces/IBaseContract.js"; import { ContractOverrides, WrappedTransactionResponse } from "../interfaces/objects"; export interface ISnickerdoodleWalletContract extends IBaseContract { factoryAddress(): ResultAsync; operatorAddress(): ResultAsync; addP256KeyWithP256Key(keyId: WebauthnCredentialId, authenticatorData: AuthenticatorData, clientJSONData: ClientDataJSONComponents, newP256KeyId: WebauthnCredentialId, newP256Key: P256PublicKeyComponents, p256Signature: P256SignatureComponents, overrides?: ContractOverrides): ResultAsync; addEVMAddressWithP256Key(keyId: WebauthnCredentialId, authenticatorData: AuthenticatorData, clientJSONData: ClientDataJSONComponents, evmAccount: EVMAccountAddress | EVMContractAddress, p256Signature: P256SignatureComponents, overrides?: ContractOverrides): ResultAsync; addEVMAccountWithEVMAccount(evmAccount: EVMAccountAddress | EVMContractAddress, overrides?: ContractOverrides): ResultAsync; removeEVMAccountWithEVMAccount(evmAccount: EVMAccountAddress | EVMContractAddress, overrides?: ContractOverrides): ResultAsync; withdrawLocalERC20Asset(tokenAddress: EVMContractAddress, overrides?: ContractOverrides): ResultAsync; withdrawNativeAsset(overrides?: ContractOverrides): ResultAsync; name(): ResultAsync; p256KeyHashes(): ResultAsync; p256Key(keyHash: string): ResultAsync<{ keyId: WebauthnCredentialId; p256PublicKeyComponents: P256PublicKeyComponents; }, SnickerdoodleWalletContractError | BlockchainCommonErrors>; evmAccounts(): ResultAsync; evmAccountIndex(address: EVMAccountAddress | EVMContractAddress): ResultAsync; hashUsed(hash: string): ResultAsync; } export declare const ISnickerdoodleWalletFactoryType: unique symbol; //# sourceMappingURL=ISnickerdoodleWalletContract.d.ts.map