import { Address, BigNumber, BlockNumber, SubgraphId, Timestamp } from "../../mappedSubgraphTypes";
import { AccountTokenSnapshotLog_Filter, AccountTokenSnapshotLog_OrderBy } from "../../schema.generated";
import { RelevantAddressesIntermediate, SubgraphListQuery, SubgraphQueryHandler } from "../../subgraphQueryHandler";
import { AccountTokenSnapshotLogsQuery, AccountTokenSnapshotLogsQueryVariables } from "./accountTokenSnapshotLogs.generated";
export interface AccountTokenSnapshotLog {
    id: SubgraphId;
    transactionHash: string;
    order: number;
    logIndex: number;
    timestamp: Timestamp;
    blockNumber: BlockNumber;
    balance: BigNumber;
    maybeCriticalAtTimestamp: Timestamp | null;
    totalAmountStreamed: BigNumber;
    totalAmountTransferred: BigNumber;
    totalApprovedSubscriptions: number;
    totalDeposit: BigNumber;
    totalInflowRate: BigNumber;
    totalNetFlowRate: BigNumber;
    totalNumberOfActiveStreams: number;
    activeOutgoingStreamCount: number;
    activeIncomingStreamCount: number;
    totalNumberOfClosedStreams: number;
    inactiveOutgoingStreamCount: number;
    inactiveIncomingStreamCount: number;
    totalSubscriptionsWithUnits: number;
    totalOutflowRate: BigNumber;
    triggeredByEventName: string;
    account: Address;
    token: Address;
    tokenSymbol: string;
}
export type AccountTokenSnapshotLogListQuery = SubgraphListQuery<AccountTokenSnapshotLog_Filter, AccountTokenSnapshotLog_OrderBy>;
export declare class AccountTokenSnapshotLogQueryHandler extends SubgraphQueryHandler<AccountTokenSnapshotLog, AccountTokenSnapshotLogListQuery, AccountTokenSnapshotLogsQuery, AccountTokenSnapshotLogsQueryVariables> {
    getAddressFieldKeysFromFilter: () => {
        accountKeys: (keyof AccountTokenSnapshotLog_Filter)[];
        tokenKeys: (keyof AccountTokenSnapshotLog_Filter)[];
    };
    getRelevantAddressesFromResultCore: (result: AccountTokenSnapshotLog) => RelevantAddressesIntermediate;
    mapFromSubgraphResponse: (response: AccountTokenSnapshotLogsQuery) => AccountTokenSnapshotLog[];
    requestDocument: import("@graphql-typed-document-node/core").TypedDocumentNode<AccountTokenSnapshotLogsQuery, import("../../schema.generated").Exact<{
        first?: import("../../schema.generated").InputMaybe<import("../../schema.generated").Scalars["Int"]["input"]>;
        skip?: import("../../schema.generated").InputMaybe<import("../../schema.generated").Scalars["Int"]["input"]>;
        orderBy?: import("../../schema.generated").InputMaybe<AccountTokenSnapshotLog_OrderBy>;
        orderDirection?: import("../../schema.generated").InputMaybe<import("../../schema.generated").OrderDirection>;
        where?: import("../../schema.generated").InputMaybe<AccountTokenSnapshotLog_Filter>;
        block?: import("../../schema.generated").InputMaybe<import("../../schema.generated").Block_Height>;
    }>>;
}
//# sourceMappingURL=accountTokenSnapshotLog.d.ts.map