import { Services } from "@arkecosystem/platform-sdk"; import { ExtendedConfirmedTransactionDataCollection } from "./transaction.collection"; declare type AggregateQuery = { addresses?: string[]; } & Services.ClientPagination; /** * Defines the implementation contract for the transaction aggregate. * * @export * @interface ITransactionAggregate */ export interface ITransactionAggregate { /** * Aggregate sent and received transactions using the given query. * * @param {AggregateQuery} query * @return {Promise} * @memberof ITransactionAggregate */ all(query: AggregateQuery): Promise; /** * Aggregate sent transactions using the given query. * * @param {AggregateQuery} query * @return {Promise} * @memberof ITransactionAggregate */ sent(query: AggregateQuery): Promise; /** * Aggregate received transactions using the given query. * * @param {AggregateQuery} query * @return {Promise} * @memberof ITransactionAggregate */ received(query: AggregateQuery): Promise; /** * Determines if there are more transactions for the given method. * * @param {string} method * @return {boolean} * @memberof ITransactionAggregate */ hasMore(method: string): boolean; /** * Remove all transactions that have been aggregated. * * @param {string} method * @memberof ITransactionAggregate */ flush(method: string): void; } export {};