import { A as WalletDeviceType, C as onAccountChangeCallback, D as MagicProvider, E as EvmWalletProviderErrorCode, F as WalletStrategyEmitterEventType, I as WalletStrategyEmitterEvents, M as StrategyEventType, N as WalletConnectStrategyEventType, O as Wallet, P as WalletStrategyEmitter, S as WalletStrategyEvmOptions, T as BroadcastMode, _ as TurnkeySession, a as ConcreteWalletStrategy, b as WalletStrategy, c as Eip1193Provider, d as SendTransactionOptions, f as StdSignDoc, g as TurnkeyProvider, h as TurnkeyOAuthProvider, i as ConcreteStrategiesArg, j as WalletEventListener, k as WalletAction, l as MagicMetadata, m as TurnkeyMetadata, n as ConcreteCosmosWalletStrategyArgs, o as ConcreteWalletStrategyArgs, p as StrategyEmitter, r as ConcreteEvmWalletStrategyArgs, s as CosmosWalletAbstraction, t as ConcreteCosmosWalletStrategy, u as PrivateKeyMetadata, v as WalletConnectMetadata, w as onChainIdChangeCallback, x as WalletStrategyArguments, y as WalletMetadata } from "./strategy-CjnVi-ci.cjs"; import { ChainId, CosmosChainId, EvmChainId } from "@injectivelabs/ts-types"; import { Msgs } from "@injectivelabs/sdk-ts/core/modules"; import { Account, Chain, LocalAccount, PublicClient, WalletClient } from "viem"; import { CosmosTxV1Beta1TxPb } from "@injectivelabs/sdk-ts/proto/cosmos-tx"; import { BigNumber } from "@injectivelabs/utils"; //#region src/types/provider.d.ts interface BrowserEip1193ProviderRpcError extends Error { message: string; code: number; data?: unknown; } interface BrowserEip1193ProviderMessage { type: string; data: unknown; } interface BrowserEip1193ProviderInfo { chainId: string; } interface BrowserEip1193RequestArguments { method: string; params?: unknown[] | object; } interface BrowserEip1193Provider { on(event: 'connect', listener: (info: BrowserEip1193ProviderInfo) => void): void; on(event: 'disconnect', listener: (error: BrowserEip1193ProviderRpcError) => void): void; on(event: 'message', listener: (message: BrowserEip1193ProviderMessage) => void): void; on(event: 'chainChanged', listener: (chainId: string) => void): void; on(event: 'accountsChanged', listener: (accounts: string[]) => void): void; on(event: string, listener: any): void; once?(event: string, listener: any): void; removeListener(event: string, listener: any): void; off?(event: string, listener: any): void; request(args: BrowserEip1193RequestArguments): Promise; removeAllListeners(): void; providers?: BrowserEip1193Provider[]; isTrust: boolean; isKeplr: boolean; isRabby: boolean; isRainbow: boolean; isPhantom: boolean; isBitGet?: boolean; isBitKeep?: boolean; isMetaMask: boolean; isOkxWallet: boolean; isTrustWallet: boolean; } interface WindowWithEip1193Provider extends Omit { rainbow: BrowserEip1193Provider; rabby: BrowserEip1193Provider; ethereum: BrowserEip1193Provider; okxwallet: BrowserEip1193Provider; providers: BrowserEip1193Provider[]; trustWallet?: BrowserEip1193Provider; bitkeep: { ethereum: BrowserEip1193Provider; }; phantom?: { ethereum?: BrowserEip1193Provider; }; keplr?: { ethereum?: BrowserEip1193Provider; }; } interface EIP6963ProviderInfo { rdns: string; uuid: string; name: string; icon: string; } interface EIP6963ProviderDetail { info: EIP6963ProviderInfo; provider: BrowserEip1193Provider; } type EIP6963AnnounceProviderEvent = { detail: EIP6963ProviderDetail; }; //#endregion //#region src/utils/tx.d.ts declare const createEip712StdSignDoc: ({ memo, chainId, accountNumber, timeoutHeight, sequence, gas, msgs }: { memo?: string; chainId: ChainId; timeoutHeight?: string; accountNumber: number; sequence: number; gas?: string; msgs: Msgs[]; }) => { chain_id: ChainId; timeout_height: string; account_number: string; sequence: string; fee: { amount: { denom: string; amount: string; }[]; gas: string; payer: string | undefined; granter: string | undefined; feePayer: string | undefined; }; msgs: { type: string; value: any; }[]; memo: string; }; //#endregion //#region src/utils/viem.d.ts declare const getEvmChainConfig: (chainId: EvmChainId | number) => Chain; declare const getViemPublicClient: (chainId: EvmChainId | number, rpcUrl?: string) => PublicClient; declare const getViemWalletClient: ({ chainId, account, rpcUrl }: { chainId: EvmChainId | number; account: Account | LocalAccount | `0x${string}`; rpcUrl?: string; }) => WalletClient; declare const getViemPublicClientFromEip1193Provider: (chainId: EvmChainId | number, provider: BrowserEip1193Provider) => PublicClient; //#endregion //#region src/utils/wallet.d.ts declare const isEvmWallet: (wallet: Wallet) => boolean; declare const isCosmosWallet: (wallet: Wallet) => boolean; declare const isEvmBrowserWallet: (wallet: Wallet) => boolean; declare const isCosmosBrowserWallet: (wallet: Wallet) => boolean; declare const isEip712V2OnlyWallet: (wallet: Wallet) => boolean; declare const isCosmosAminoOnlyWallet: (wallet: Wallet) => boolean; //#endregion //#region src/utils/cosmos.d.ts declare const createCosmosSignDocFromSignDoc: (signDoc: CosmosTxV1Beta1TxPb.SignDoc) => any; //#endregion //#region src/utils/address.d.ts declare const getInjectiveSignerAddress: (address: string | undefined) => string; declare const getEthereumSignerAddress: (address: string | undefined) => string; //#endregion //#region src/utils/constants.d.ts declare const GWEI_IN_WEI: BigNumber; declare const TIP_IN_GWEI: BigNumber; declare const DEFAULT_BASE_DERIVATION_PATH = "m/44'/60'"; declare const DEFAULT_NUM_ADDRESSES_TO_FETCH = 5; declare const DEFAULT_ADDRESS_SEARCH_LIMIT = 100; //#endregion //#region src/base.d.ts declare abstract class BaseConcreteStrategy { protected chainId: ChainId | CosmosChainId; protected evmChainId?: EvmChainId; protected listeners: Partial>; metadata?: WalletMetadata; /** * Optional emitter passed from parent WalletStrategy. * When provided, strategies emit events directly on the parent's emitter. */ protected emitter?: StrategyEmitter; constructor(args: ConcreteWalletStrategyArgs | ConcreteEvmWalletStrategyArgs | ConcreteCosmosWalletStrategyArgs); setMetadata(metadata?: WalletMetadata): void; /** * Emit an event from this strategy. * If emitter was provided from parent, events go directly to parent. */ protected emit(event: WalletStrategyEmitterEventType, data?: Record): void; } //#endregion export { BaseConcreteStrategy, BroadcastMode, BrowserEip1193Provider, ConcreteCosmosWalletStrategy, ConcreteCosmosWalletStrategyArgs, ConcreteEvmWalletStrategyArgs, ConcreteStrategiesArg, ConcreteWalletStrategy, ConcreteWalletStrategyArgs, CosmosWalletAbstraction, DEFAULT_ADDRESS_SEARCH_LIMIT, DEFAULT_BASE_DERIVATION_PATH, DEFAULT_NUM_ADDRESSES_TO_FETCH, EIP6963AnnounceProviderEvent, EIP6963ProviderDetail, EIP6963ProviderInfo, Eip1193Provider, EvmWalletProviderErrorCode, GWEI_IN_WEI, MagicMetadata, MagicProvider, PrivateKeyMetadata, SendTransactionOptions, StdSignDoc, StrategyEmitter, StrategyEventType, TIP_IN_GWEI, TurnkeyMetadata, TurnkeyOAuthProvider, TurnkeyProvider, TurnkeySession, Wallet, WalletAction, WalletConnectMetadata, WalletConnectStrategyEventType, WalletDeviceType, WalletEventListener, WalletMetadata, WalletStrategy, WalletStrategyArguments, WalletStrategyEmitter, WalletStrategyEmitterEventType, WalletStrategyEmitterEvents, WalletStrategyEvmOptions, WindowWithEip1193Provider, createCosmosSignDocFromSignDoc, createEip712StdSignDoc, getEthereumSignerAddress, getEvmChainConfig, getInjectiveSignerAddress, getViemPublicClient, getViemPublicClientFromEip1193Provider, getViemWalletClient, isCosmosAminoOnlyWallet, isCosmosBrowserWallet, isCosmosWallet, isEip712V2OnlyWallet, isEvmBrowserWallet, isEvmWallet, onAccountChangeCallback, onChainIdChangeCallback };