import { Address, Hex, WalletClient } from 'viem';
import { MessageSigner, AccountID, RequestID, Timestamp, AuthRequestParams, PartialEIP712AuthMessage, EIP712AuthDomain, AuthChallengeResponse, GetLedgerTransactionsFilters, RPCChannelStatus, RPCProtocolVersion } from './types';
import { CloseAppSessionRequestParams, CreateAppSessionRequestParams, SubmitAppStateParamsPerProtocol, ResizeChannelRequestParams, TransferRequestParams, CreateChannelRequestParams } from './types/request';
export declare function createAuthRequestMessage(params: AuthRequestParams, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createAuthVerifyMessageFromChallenge(signer: MessageSigner, challenge: string, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createAuthVerifyMessage(signer: MessageSigner, challenge: AuthChallengeResponse, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createAuthVerifyMessageWithJWT(jwtToken: string, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createPingMessage(_signer: MessageSigner, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createPingMessageV2(requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createGetConfigMessage(_signer: MessageSigner, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetConfigMessageV2(requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createGetUserTagMessage(signer: MessageSigner, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetSessionKeysMessage(signer: MessageSigner, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetLedgerBalancesMessage(signer: MessageSigner, accountId?: string, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetLedgerEntriesMessage(_signer: MessageSigner, accountId: string, asset?: string, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetLedgerEntriesMessageV2(accountId: string, asset?: string, requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createGetLedgerTransactionsMessage(_signer: MessageSigner, accountId: string, filters?: GetLedgerTransactionsFilters, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetLedgerTransactionsMessageV2(accountId: string, filters?: GetLedgerTransactionsFilters, requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createGetAppDefinitionMessage(_signer: MessageSigner, appSessionId: AccountID, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetAppDefinitionMessageV2(appSessionId: AccountID, requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createGetAppSessionsMessage(_signer: MessageSigner, participant: Address, status?: RPCChannelStatus, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetAppSessionsMessageV2(participant: Address, status?: RPCChannelStatus, requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createAppSessionMessage(signer: MessageSigner, params: CreateAppSessionRequestParams, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createSubmitAppStateMessage<P extends RPCProtocolVersion>(signer: MessageSigner, params: SubmitAppStateParamsPerProtocol[P], requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createCloseAppSessionMessage(signer: MessageSigner, params: CloseAppSessionRequestParams, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createApplicationMessage(signer: MessageSigner, appSessionId: Hex, messageParams: any, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createCreateChannelMessage(signer: MessageSigner, params: CreateChannelRequestParams, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createCloseChannelMessage(signer: MessageSigner, channelId: AccountID, fundDestination: Address, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createResizeChannelMessage(signer: MessageSigner, params: ResizeChannelRequestParams, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetChannelsMessage(_signer: MessageSigner, participant?: Address, status?: RPCChannelStatus, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetChannelsMessageV2(participant?: Address, status?: RPCChannelStatus, requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createGetRPCHistoryMessage(signer: MessageSigner, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetAssetsMessage(_signer: MessageSigner, chainId?: number, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createGetAssetsMessageV2(chainId?: number, requestId?: RequestID, timestamp?: Timestamp): string;
export declare function createTransferMessage(signer: MessageSigner, params: TransferRequestParams, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createRevokeSessionKeyMessage(signer: MessageSigner, sessionKey: Address, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createCleanupSessionKeyCacheMessage(signer: MessageSigner, requestId?: RequestID, timestamp?: Timestamp): Promise<string>;
export declare function createEIP712AuthMessageSigner(walletClient: WalletClient, partialMessage: PartialEIP712AuthMessage, domain: EIP712AuthDomain): MessageSigner;
export declare function createECDSAMessageSigner(privateKey: Hex): MessageSigner;
