import { AminoSignResponse, StdSignDoc } from '@cosmjs/amino'; import { OfflineDirectSigner, OfflineSigner } from '@cosmjs/proto-signing'; import { DirectSignResponse } from '@cosmjs/proto-signing'; import { BroadcastMode, Key, StdTx } from '@keplr-wallet/types'; export interface Trust { enable(chainIds: string | string[]): Promise; mode: 'extension'; getKey(chainId: string): Promise; getOfflineSigner(chainId: string): OfflineSigner & OfflineDirectSigner; getOfflineSignerOnlyAmino(chainId: string): OfflineSigner; getOfflineSignerAuto(chainId: string): Promise; signAmino(chainId: string, signerAddress: string, signDoc: StdSignDoc): Promise; signDirect(chainId: string, signerAddress: string, signDoc: { /** SignDoc bodyBytes */ bodyBytes?: Uint8Array | null; /** SignDoc authInfoBytes */ authInfoBytes?: Uint8Array | null; /** SignDoc chainId */ chainId?: string | null; /** SignDoc accountNumber */ accountNumber?: Long | null; }): Promise; sendTx(chainId: string, tx: StdTx | Uint8Array, mode: BroadcastMode): Promise; }