import type { Account } from "@onflow/typedefs"; import { SdkContext } from "../context/context"; export interface AccountQueryOptions { height?: number; id?: string; isSealed?: boolean; } export declare function createAccount(context: SdkContext): (address: string, { height, id, isSealed }?: AccountQueryOptions, opts?: object) => Promise; /** * Retrieve any account from Flow network's latest block or from a specified block height. * * Account address is a unique account identifier. Be mindful about the '0x' prefix, you should use the prefix as a default representation but be careful and safely handle user inputs without the prefix. * * An account includes the following data: * - Address: the account address. * - Balance: balance of the account. * - Contracts: list of contracts deployed to the account. * - Keys: list of keys associated with the account. * * @param address Address of the account * @param queryOptions Query parameters * @param queryOptions.height Block height to query * @param queryOptions.id Block ID to query * @param queryOptions.isSealed Block finality * @param opts Optional parameters * @returns A promise that resolves to an Account object * * @example * import * as fcl from "@onflow/fcl"; * * // Get account from latest block height * const account = await fcl.account("0x1d007d755706c469"); * console.log("Address:", account.address); * console.log("Balance:", account.balance); * console.log("Keys:", account.keys); * console.log("Contracts:", Object.keys(account.contracts)); * * // Get account at a specific block height * const historicalAccount = await fcl.account("0x1d007d755706c469", { * height: 12345 * }); * * // Get account at a specific block ID * const accountAtBlock = await fcl.account("0x1d007d755706c469", { * id: "9dda5f281897389b99f103a1c6b180eec9dac870de846449a302103ce38453f3" * }); * * // Get account from sealed block * const sealedAccount = await fcl.account("0x1d007d755706c469", { * isSealed: true * }); * * // Alternative using builder pattern * fcl.send([ * fcl.getAccount("0x1d007d755706c469"), * fcl.atBlockHeight(123) * ]).then(fcl.decode); */ export declare const account: (address: string, args_1?: AccountQueryOptions | undefined, opts?: object | undefined) => Promise;