import { Aptos } from "@aptos-labs/ts-sdk";
import { RoleAddedEvent, RoleRemovedEvent, ExTokenAddedEvent, ExTokenRemovedEvent, NewTokenEvent, NewOfferEvent, NewOrderEvent, SettleFilledEvent, SettleCancelledEvent, CancelOfferEvent, CloseOfferEvent, ForceCancelOrderEvent, UpdateTokenSettleDurationEvent, TokenToSettlePhaseEvent, TokenForceCancelSettlePhaseEvent, TokenStatusToggledEvent, TokenCancelledEvent, EventWrapper, ConfigUpdatedEvent, EventResults } from "./type";
import { GraphQLClient, GraphQLConfig } from "./graphqlClient";
export declare class EventDeserializer {
    configUpdatedEvent(event: EventWrapper): ConfigUpdatedEvent;
    roleAddedEvent(event: EventWrapper): RoleAddedEvent;
    roleRemovedEvent(event: EventWrapper): RoleRemovedEvent;
    exTokenAddedEvent(event: EventWrapper): ExTokenAddedEvent;
    exTokenRemovedEvent(event: EventWrapper): ExTokenRemovedEvent;
    newTokenEvent(event: EventWrapper): NewTokenEvent;
    newOfferEvent(event: EventWrapper): NewOfferEvent;
    newOrderEvent(event: EventWrapper): NewOrderEvent;
    settleFilledEvent(event: EventWrapper): SettleFilledEvent;
    settleCancelledEvent(event: EventWrapper): SettleCancelledEvent;
    cancelOfferEvent(event: EventWrapper): CancelOfferEvent;
    closeOfferEvent(event: EventWrapper): CloseOfferEvent;
    forceCancelOrderEvent(event: EventWrapper): ForceCancelOrderEvent;
    updateTokenSettleDurationEvent(event: EventWrapper): UpdateTokenSettleDurationEvent;
    tokenToSettlePhaseEvent(event: EventWrapper): TokenToSettlePhaseEvent;
    tokenForceCancelSettlePhaseEvent(event: EventWrapper): TokenForceCancelSettlePhaseEvent;
    tokenStatusToggledEvent(event: EventWrapper): TokenStatusToggledEvent;
    tokenCancelledEvent(event: EventWrapper): TokenCancelledEvent;
}
export declare class EventCrawler {
    aptos: Aptos;
    packageId: string;
    eventDeserializer: EventDeserializer;
    graphqlClient: GraphQLClient | null;
    constructor(aptos: Aptos, packageId: string, graphQlConfig?: GraphQLConfig);
    getEvents(offset: number, limit?: number): Promise<EventResults>;
    getEventsV2(versionGt?: number, limit?: number, versionEq?: number | null): Promise<EventResults>;
    private parseEvent;
}
