/**
 * Account management module for Expo Finance Kit
 * Handles fetching and managing financial account data
 */
import { Account, AccountQueryOptions, AccountWithMetadata } from '../ExpoFinanceKit.types';
/**
 * Fetches all authorized financial accounts
 * @returns Promise resolving to array of accounts
 * @throws {FinanceKitError} If unauthorized or unavailable
 */
export declare function getAccounts(): Promise<Account[]>;
/**
 * Fetches accounts with filtering options
 * @param options - Query options for filtering accounts
 * @returns Promise resolving to filtered array of accounts
 */
export declare function getAccountsWithOptions(options: AccountQueryOptions): Promise<Account[]>;
/**
 * Fetches a single account by ID
 * @param accountId - The account ID to fetch
 * @returns Promise resolving to the account or null if not found
 */
export declare function getAccountById(accountId: string): Promise<Account | null>;
/**
 * Fetches accounts with additional metadata
 * @returns Promise resolving to accounts with metadata
 */
export declare function getAccountsWithMetadata(): Promise<AccountWithMetadata[]>;
/**
 * Groups accounts by institution
 * @returns Promise resolving to a map of institution names to accounts
 */
export declare function getAccountsByInstitution(): Promise<Map<string, Account[]>>;
/**
 * Gets the primary account (first asset account found)
 * @returns Promise resolving to the primary account or null
 */
export declare function getPrimaryAccount(): Promise<Account | null>;
/**
 * Refreshes account data (forces a new fetch)
 * @returns Promise resolving to refreshed accounts
 */
export declare function refreshAccounts(): Promise<Account[]>;
//# sourceMappingURL=accounts.d.ts.map