import { Connector } from "../types/connector.js";
import { Config } from "../factories/createConfig.js";
import { Account, Chain, ChainId } from "@bigmi/core";

//#region src/actions/getAccount.d.ts
type GetAccountReturnType<config extends Config = Config, chain = (Config extends config ? Chain : config["chains"][number])> = {
  account: Account;
  accounts: readonly [Account, ...Account[]];
  chain: chain | undefined;
  chainId: ChainId;
  connector: Connector;
  isConnected: true;
  isConnecting: false;
  isDisconnected: false;
  isReconnecting: false;
  status: "connected";
} | {
  account: Account | undefined;
  accounts: readonly Account[] | undefined;
  chain: chain | undefined;
  chainId: ChainId | undefined;
  connector: Connector | undefined;
  isConnected: boolean;
  isConnecting: false;
  isDisconnected: false;
  isReconnecting: true;
  status: "reconnecting";
} | {
  account: Account | undefined;
  accounts: readonly Account[] | undefined;
  chain: chain | undefined;
  chainId: ChainId | undefined;
  connector: Connector | undefined;
  isConnected: false;
  isReconnecting: false;
  isConnecting: true;
  isDisconnected: false;
  status: "connecting";
} | {
  account: undefined;
  accounts: undefined;
  chain: undefined;
  chainId: undefined;
  connector: undefined;
  isConnected: false;
  isReconnecting: false;
  isConnecting: false;
  isDisconnected: true;
  status: "disconnected";
};
declare function getAccount<C extends Config>(config: C): GetAccountReturnType<C>;
//#endregion
export { GetAccountReturnType, getAccount };
//# sourceMappingURL=getAccount.d.ts.map