/// export interface Tag { multiline?: boolean; open?: (state: State) => void; readContent?: (state: State, symbolCode: number) => void; close?: (state: State, options: ReadOptions) => void; readToken(state: State): number; } export interface State { pos: number; statementIndex: number; transactionIndex: number; tag?: Tag; tagContentStart?: number; tagContentEnd?: number; data: Uint8Array; statements: Statement[]; } export interface BalanceInfo { isCredit: boolean; date: string; currency: string; value: number; } export interface Transaction { id: string; code: string; fundsCode: string; isCredit: boolean; isExpense: boolean; currency: string; description: string; amount: number; valueDate: string; entryDate: string; customerReference: string; bankReference: string; } export interface Statement { transactions: Transaction[]; referenceNumber?: string; relatedReferenceNumber?: string; accountId?: string; number?: string; openingBalance?: BalanceInfo; closingBalance?: BalanceInfo; closingAvailableBalance?: BalanceInfo; forwardAvailableBalance?: BalanceInfo; additionalInformation?: string; } export interface ReadOptions { getTransactionId(transaction: Transaction, index: number): string; } export declare function read(input: ArrayBuffer | Buffer, options?: ReadOptions): Promise;