import type * as RpcTypes from "./generated.js";
import type { Transaction } from "../../transactions/index.js";
export interface DevInspectTransactionBlockParams {
    sender: string;
    transactionBlock: Transaction | Uint8Array | string;
    gasPrice?: bigint | number | null | undefined;
    epoch?: string | null | undefined;
    additionalArgs?: RpcTypes.DevInspectArgs | null | undefined;
    signal?: AbortSignal;
}
export interface DryRunTransactionBlockParams {
    transactionBlock: Uint8Array | string;
    signal?: AbortSignal;
}
export interface ExecuteTransactionBlockParams {
    transactionBlock: Uint8Array | string;
    signature: string | string[];
    options?: RpcTypes.WowTransactionBlockResponseOptions | null | undefined;
    requestType?: RpcTypes.ExecuteTransactionRequestType | null | undefined;
    signal?: AbortSignal;
}
export interface GetChainIdentifierParams {
    signal?: AbortSignal;
}
export interface GetCheckpointParams {
    id: RpcTypes.CheckpointId;
    signal?: AbortSignal;
}
export interface GetCheckpointsParams {
    cursor?: string | null | undefined;
    limit?: number | null | undefined;
    descendingOrder: boolean;
    signal?: AbortSignal;
}
export interface GetEventsParams {
    transactionDigest: string;
    signal?: AbortSignal;
}
export interface GetLatestCheckpointSequenceNumberParams {
    signal?: AbortSignal;
}
export interface GetMoveFunctionArgTypesParams {
    package: string;
    module: string;
    function: string;
    signal?: AbortSignal;
}
export interface GetNormalizedMoveFunctionParams {
    package: string;
    module: string;
    function: string;
    signal?: AbortSignal;
}
export interface GetNormalizedMoveModuleParams {
    package: string;
    module: string;
    signal?: AbortSignal;
}
export interface GetNormalizedMoveModulesByPackageParams {
    package: string;
    signal?: AbortSignal;
}
export interface GetNormalizedMoveStructParams {
    package: string;
    module: string;
    struct: string;
    signal?: AbortSignal;
}
export interface GetObjectParams {
    id: string;
    options?: RpcTypes.WowObjectDataOptions | null | undefined;
    signal?: AbortSignal;
}
export interface GetProtocolConfigParams {
    version?: string | null | undefined;
    signal?: AbortSignal;
}
export interface GetTotalTransactionBlocksParams {
    signal?: AbortSignal;
}
export interface GetTransactionBlockParams {
    digest: string;
    options?: RpcTypes.WowTransactionBlockResponseOptions | null | undefined;
    signal?: AbortSignal;
}
export interface MultiGetObjectsParams {
    ids: string[];
    options?: RpcTypes.WowObjectDataOptions | null | undefined;
    signal?: AbortSignal;
}
export interface MultiGetTransactionBlocksParams {
    digests: string[];
    options?: RpcTypes.WowTransactionBlockResponseOptions | null | undefined;
    signal?: AbortSignal;
}
export interface TryGetPastObjectParams {
    id: string;
    version: number;
    options?: RpcTypes.WowObjectDataOptions | null | undefined;
    signal?: AbortSignal;
}
export interface TryMultiGetPastObjectsParams {
    pastObjects: RpcTypes.GetPastObjectRequest[];
    options?: RpcTypes.WowObjectDataOptions | null | undefined;
    signal?: AbortSignal;
}
export interface GetAllBalancesParams {
    owner: string;
    signal?: AbortSignal;
}
export interface GetAllCoinsParams {
    owner: string;
    cursor?: string | null | undefined;
    limit?: number | null | undefined;
    signal?: AbortSignal;
}
export interface GetBalanceParams {
    owner: string;
    coinType?: string | null | undefined;
    signal?: AbortSignal;
}
export interface GetCoinMetadataParams {
    coinType: string;
    signal?: AbortSignal;
}
export interface GetCoinsParams {
    owner: string;
    coinType?: string | null | undefined;
    cursor?: string | null | undefined;
    limit?: number | null | undefined;
    signal?: AbortSignal;
}
export interface GetCommitteeInfoParams {
    epoch?: string | null | undefined;
    signal?: AbortSignal;
}
export interface GetDynamicFieldObjectParams {
    parentId: string;
    name: RpcTypes.DynamicFieldName;
    signal?: AbortSignal;
}
export interface GetDynamicFieldsParams {
    parentId: string;
    cursor?: string | null | undefined;
    limit?: number | null | undefined;
    signal?: AbortSignal;
}
export interface GetLatestWowSystemStateParams {
    signal?: AbortSignal;
}
export type GetOwnedObjectsParams = {
    owner: string;
    cursor?: string | null | undefined;
    limit?: number | null | undefined;
    signal?: AbortSignal;
} & RpcTypes.WowObjectResponseQuery;
export interface GetReferenceGasPriceParams {
    signal?: AbortSignal;
}
export interface GetStakesParams {
    owner: string;
    signal?: AbortSignal;
}
export interface GetStakesByIdsParams {
    stakedWowIds: string[];
    signal?: AbortSignal;
}
export interface GetTotalSupplyParams {
    coinType: string;
    signal?: AbortSignal;
}
export interface GetValidatorsApyParams {
    signal?: AbortSignal;
}
export interface QueryEventsParams {
    query: RpcTypes.WowEventFilter;
    cursor?: RpcTypes.EventId | null | undefined;
    limit?: number | null | undefined;
    order?: "ascending" | "descending" | null | undefined;
    signal?: AbortSignal;
}
export type QueryTransactionBlocksParams = {
    cursor?: string | null | undefined;
    limit?: number | null | undefined;
    order?: "ascending" | "descending" | null | undefined;
    signal?: AbortSignal;
} & RpcTypes.WowTransactionBlockResponseQuery;
export interface SubscribeEventParams {
    filter: RpcTypes.WowEventFilter;
    signal?: AbortSignal;
}
export interface SubscribeTransactionParams {
    filter: RpcTypes.TransactionFilter;
    signal?: AbortSignal;
}
export interface UnsafeBatchTransactionParams {
    signer: string;
    singleTransactionParams: RpcTypes.RPCTransactionRequestParams[];
    gas?: string | null | undefined;
    gasBudget: string;
    txnBuilderMode?: RpcTypes.SuiTransactionBlockBuilderMode | null | undefined;
    signal?: AbortSignal;
}
export interface UnsafeMergeCoinsParams {
    signer: string;
    primaryCoin: string;
    coinToMerge: string;
    gas?: string | null | undefined;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafeMoveCallParams {
    signer: string;
    packageObjectId: string;
    module: string;
    function: string;
    typeArguments: string[];
    arguments: unknown[];
    gas?: string | null | undefined;
    gasBudget: string;
    executionMode?: RpcTypes.SuiTransactionBlockBuilderMode | null | undefined;
    signal?: AbortSignal;
}
export interface UnsafePayParams {
    signer: string;
    inputCoins: string[];
    recipients: string[];
    amounts: string[];
    gas?: string | null | undefined;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafePayAllSuiParams {
    signer: string;
    inputCoins: string[];
    recipient: string;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafePaySuiParams {
    signer: string;
    inputCoins: string[];
    recipients: string[];
    amounts: string[];
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafePublishParams {
    sender: string;
    compiledModules: string[];
    dependencies: string[];
    gas?: string | null | undefined;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafeRequestAddStakeParams {
    signer: string;
    coins: string[];
    amount?: string | null | undefined;
    validator: string;
    gas?: string | null | undefined;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafeRequestWithdrawStakeParams {
    signer: string;
    stakedSui: string;
    gas?: string | null | undefined;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafeSplitCoinParams {
    signer: string;
    coinObjectId: string;
    splitAmounts: string[];
    gas?: string | null | undefined;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafeSplitCoinEqualParams {
    signer: string;
    coinObjectId: string;
    splitCount: string;
    gas?: string | null | undefined;
    gasBudget: string;
    signal?: AbortSignal;
}
export interface UnsafeTransferObjectParams {
    signer: string;
    objectId: string;
    gas?: string | null | undefined;
    gasBudget: string;
    recipient: string;
    signal?: AbortSignal;
}
export interface UnsafeTransferSuiParams {
    signer: string;
    suiObjectId: string;
    gasBudget: string;
    recipient: string;
    amount?: string | null | undefined;
    signal?: AbortSignal;
}
