import { Aptos, type AccountAddressInput, type AptosSettings, type AnyRawTransaction } from "@aptos-labs/ts-sdk";
import type { Role, ConfigData, OtcOfferData } from "./type";
import { EventCrawler } from "./eventCrawler";
import { InputTransactionData } from "@aptos-labs/wallet-adapter-react";
import { GraphQLConfig } from "./graphqlClient";
export declare class OTCPreMarketAptos {
    aptos: Aptos;
    packageId: string;
    eventCrawler: EventCrawler;
    constructor(aptosConfig?: AptosSettings, graphQlConfig?: GraphQLConfig);
    getConfig(): Promise<ConfigData>;
    getOtcOffer(offerId: AccountAddressInput): Promise<OtcOfferData>;
    getRole(user: AccountAddressInput): Promise<Role>;
    isOfferExpired(offerId: AccountAddressInput): Promise<boolean>;
    buildUpdateConfig(owner: AccountAddressInput, params: {
        feePercent?: number | bigint;
        feeWallet?: AccountAddressInput;
    }): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildMigrate(owner: AccountAddressInput): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildAddRole(admin: AccountAddressInput, user: AccountAddressInput, role: Role): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildRemoveRole(admin: AccountAddressInput, user: AccountAddressInput): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildForceCancelOffer(operator: AccountAddressInput, offerObj: AccountAddressInput): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildForceCancelOffers(operator: AccountAddressInput, offerObjs: AccountAddressInput[]): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildCreateOffer(user: AccountAddressInput, params: {
        orderObj: AccountAddressInput;
        isBuyer: boolean;
        exToken: AccountAddressInput;
        value: number | bigint;
        deadline: number | bigint;
    }): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildBatchCreateOffer(user: AccountAddressInput, params: {
        orderObjs: AccountAddressInput[];
        isBuyers: boolean[];
        exTokens: AccountAddressInput[];
        values: (number | bigint)[];
        deadlines: (number | bigint)[];
    }): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildUpdateOffer(user: AccountAddressInput, params: {
        offerObj: AccountAddressInput;
        newValue: number | bigint;
        newDeadline: number | bigint;
    }): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildFillOffer(user: AccountAddressInput, offerObj: AccountAddressInput): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildCancelOffer(user: AccountAddressInput, offerObj: AccountAddressInput): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildCancelExpiredOffer(user: AccountAddressInput, offerObj: AccountAddressInput): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
    buildCancelExpiredOffers(user: AccountAddressInput, offerObjs: AccountAddressInput[]): Promise<{
        rawTx: AnyRawTransaction;
        txData: InputTransactionData;
    }>;
}
