import { type MultichainAccount } from "@metamask/account-api"; import type { EntropySourceId } from "@metamask/keyring-api"; import type { InternalAccount } from "@metamask/keyring-internal-api"; import type { MultichainAccountServiceMessenger } from "./types.mjs"; /** * The options that {@link MultichainAccountService} takes. */ type MultichainAccountServiceOptions = { messenger: MultichainAccountServiceMessenger; }; /** * Service to expose multichain accounts capabilities. */ export declare class MultichainAccountService { #private; /** * Constructs a new MultichainAccountService. * * @param options - The options. * @param options.messenger - The messenger suited to this * MultichainAccountService. */ constructor({ messenger }: MultichainAccountServiceOptions); /** * Initialize the service and constructs the internal reprensentation of * multichain accounts and wallets. */ init(): void; /** * Gets a reference to the multichain account matching this entropy source and group index. * * @param options - Options. * @param options.entropySource - The entropy source of the multichain account. * @param options.groupIndex - The group index of the multichain account. * @throws If none multichain account match this entropy source and group index. * @returns A reference to the multichain account. */ getMultichainAccount({ entropySource, groupIndex, }: { entropySource: EntropySourceId; groupIndex: number; }): MultichainAccount; /** * Gets all multichain accounts for a given entropy source. * * @param options - Options. * @param options.entropySource - The entropy source to query. * @throws If no multichain accounts match this entropy source. * @returns A list of all multichain accounts. */ getMultichainAccounts({ entropySource, }: { entropySource: EntropySourceId; }): MultichainAccount[]; } export {}; //# sourceMappingURL=MultichainAccountService.d.mts.map