import type { AccountParsers } from "@saberhq/anchor-contrib"; import type { KeyedAccountInfo, PublicKey } from "@solana/web3.js"; import type { ParserHooks } from ".."; import type { ParsedAccountDatum } from "../types"; export declare type AccountParser = (info: KeyedAccountInfo) => T; /** * Makes account parsers from a coder. * @param parsers * @returns */ export declare const makeParsersFromCoder: (parsers: AccountParsers) => AccountParsers extends infer T extends object ? { [P in keyof T]: (info: KeyedAccountInfo) => M[keyof M]; } : never; /** * Makes hooks for parsers. * @param parsers * @returns */ export declare const makeParserHooks: (parsers: AccountParsers) => { [K in keyof M]: ParserHooks; }; /** * Parses accounts with the given parser. * * @deprecated use {@link useBatchedParsedAccounts} instead * @param keys * @param parser * @returns */ export declare const useParsedAccountsData: (keys: (PublicKey | null | undefined)[], parser: AccountParser) => ParsedAccountDatum[]; /** * Loads the parsed data of a single account. * @returns */ export declare const useParsedAccountData: (key: PublicKey | null | undefined, parser: AccountParser) => { loading: boolean; data: ParsedAccountDatum; }; //# sourceMappingURL=useParsedAccountsData.d.ts.map