import { Configuration, ValidateAddressesReply, CursorPageAddress, CreateAddressRequest, Address, CursorPageChain, Chain, SweepAddressRequest, SweepAddressResponse, CursorPageToken, CreateTokenRequest, Token, UpdateTokenRequest, Transaction, EstimateFeeRequest, EstimateFeeResponse, CreateTransferRequest, CreateTransferResponse, CreateWalletRequest, Wallet, CursorPageWallet, UpdateWalletRequest, CursorPageEndpoint, Endpoint, CreateEndpoint, UpdateEndpoint, CursorPageEventType, SignMessageRequest, SignMessageResponse } from "./openapi/index"; export * from "./openapi/models/all"; export * from "./openapi/apis/exception"; export interface WaaSOptions { debug?: boolean; serverUrl?: string; } export declare class WaaS { readonly _configuration: Configuration; readonly Addresses: Addresses; readonly Chains: Chains; readonly Sweeps: Sweeps; readonly Tokens: Tokens; readonly Transactions: Transactions; readonly Wallets: Wallets; readonly WebhookEndpoints: WebhookEndpoints; readonly WebhookEvents: WebhookEvents; constructor(apikey: string, privateKey: string, options?: WaaSOptions); } export interface PostOptions { idempotencyKey?: string; } interface CursorPageOptions { cursor?: string; limit?: number; } export interface ListAddressesOptions extends CursorPageOptions { walletIds?: string[]; chainIds?: string[]; } export interface ListAddressesByWalletOptions extends CursorPageOptions { chainIds?: string[]; } declare class Addresses { private readonly api; constructor(config: Configuration); list(options?: ListAddressesOptions): Promise; listByWallet(walletId: string, options?: ListAddressesByWalletOptions): Promise; validateAddresses(chainId: string, addresses: string[]): Promise; create(walletId: string, createAddressRequest: CreateAddressRequest): Promise
; getAddress(walletId: string, address: string): Promise
; } declare class Chains { private readonly api; constructor(config: Configuration); list(options?: CursorPageOptions): Promise; retrieve(chainId: string): Promise; } declare class Sweeps { private readonly api; constructor(config: Configuration); sweepAddress(address: string, sweepAddressRequest: SweepAddressRequest): Promise; } declare class Tokens { private readonly api; constructor(config: Configuration); list(options?: CursorPageOptions): Promise; create(createTokenRequest: CreateTokenRequest): Promise; retrieve(tokenId: string): Promise; update(tokenId: string, updateTokenRequest: UpdateTokenRequest): Promise; } export interface ListTransactionsOptions extends CursorPageOptions { walletIds?: string[]; chainIds?: string[]; tokenIds?: string[]; assetIds?: string[]; hash?: string; status?: string; } declare class Transactions { private readonly api; constructor(config: Configuration); list(options?: ListTransactionsOptions): Promise; estimateFee(estimateFeeRequest: EstimateFeeRequest): Promise; transferToken(createTransferRequest: CreateTransferRequest): Promise; getTransaction(transactionId: string): Promise; signMessage(signMessageRequest: SignMessageRequest): Promise; } declare class Wallets { private readonly api; constructor(config: Configuration); list(options?: CursorPageOptions): Promise; create(createWalletRequest: CreateWalletRequest): Promise; delete(walletId: string): Promise; get(walletId: string): Promise; update(walletId: string, updateWalletRequest: UpdateWalletRequest): Promise; } declare class WebhookEndpoints { private readonly api; constructor(config: Configuration); list(options?: CursorPageOptions): Promise; create(createEndpoint: CreateEndpoint): Promise; delete(endpointId: string): Promise; get(endpointId: string): Promise; update(endpointId: string, updateEndpoint: UpdateEndpoint): Promise; } declare class WebhookEvents { private readonly api; constructor(config: Configuration); list(options?: CursorPageOptions): Promise; }