import { Env } from "@keplr-wallet/router"; import { ChainsService } from "../chains"; import { KeyRingService } from "../keyring"; import { TokenERC20Service } from "../token-erc20"; import { PermissionService } from "../permission"; import { Call, InvocationsSignerDetails, TypedData as StarknetTypedData, DeployAccountSignerDetails, DeclareSignerDetails, SignerInterface, ProviderInterface } from "starknet"; import { InteractionService } from "../interaction"; import { AccountImpl } from "./account-impl"; import { BackgroundTxService } from "../tx"; import { VaultService } from "../vault"; export declare class KeyRingStarknetService { protected readonly chainsService: ChainsService; protected readonly vaultService: VaultService; readonly keyRingService: KeyRingService; protected readonly permissionService: PermissionService; protected readonly tokenERC20Service: TokenERC20Service; protected readonly interactionService: InteractionService; protected readonly backgroundTxService: BackgroundTxService; constructor(chainsService: ChainsService, vaultService: VaultService, keyRingService: KeyRingService, permissionService: PermissionService, tokenERC20Service: TokenERC20Service, interactionService: InteractionService, backgroundTxService: BackgroundTxService); init(): Promise; generateAccountInterface(env: Env, origin: string, address: string): AccountImpl; generateSignerInterface(env: Env, origin: string): SignerInterface; generateProviderInterface(_env: Env, origin: string): ProviderInterface; getStarknetKeySelected(chainId: string): Promise<{ name: string; hexAddress: string; pubKey: Uint8Array; address: Uint8Array; isNanoLedger: boolean; }>; getStarknetKey(vaultId: string, chainId: string): Promise<{ name: string; hexAddress: string; pubKey: Uint8Array; address: Uint8Array; isNanoLedger: boolean; }>; getStarknetKeyParamsSelected(chainId: string): Promise<{ pubKey: Uint8Array; starknetPubKey: Uint8Array; address: Uint8Array; salt: Uint8Array; classHash: Uint8Array; xLow: Uint8Array; xHigh: Uint8Array; yLow: Uint8Array; yHigh: Uint8Array; }>; getStarknetKeyParams(vaultId: string, chainId: string): Promise<{ pubKey: Uint8Array; starknetPubKey: Uint8Array; address: Uint8Array; salt: Uint8Array; classHash: Uint8Array; xLow: Uint8Array; xHigh: Uint8Array; yLow: Uint8Array; yHigh: Uint8Array; }>; request(env: Env, origin: string, type: string, params?: any, chainId?: string): Promise; getNewCurrentChainIdFromRequest(method: string, params?: unknown[] | Record): string | undefined; checkNeedEnableAccess(method: string, params?: unknown[] | Record): boolean; private getCurrentChainId; private forceGetCurrentChainId; signStarknetMessageSelected(env: Env, origin: string, chainId: string, signer: string, typedData: StarknetTypedData): Promise; signStarknetMessage(env: Env, origin: string, vaultId: string, chainId: string, signer: string, typedData: StarknetTypedData): Promise; signStarknetTransactionSelected(env: Env, origin: string, chainId: string, transactions: Call[], details: InvocationsSignerDetails, noChangeTx: boolean): Promise<{ transactions: Call[]; details: InvocationsSignerDetails; signature: string[]; }>; signStarknetTransaction(env: Env, origin: string, vaultId: string, chainId: string, transactions: Call[], details: InvocationsSignerDetails, noChangeTx: boolean): Promise<{ transactions: Call[]; details: InvocationsSignerDetails; signature: string[]; }>; signStarknetDeployAccountTransactionSelected(env: Env, origin: string, chainId: string, details: DeployAccountSignerDetails): Promise<{ transaction: DeployAccountSignerDetails; signature: string[]; }>; signStarknetDeployAccountTransaction(env: Env, _origin: string, vaultId: string, chainId: string, details: DeployAccountSignerDetails): Promise<{ transaction: DeployAccountSignerDetails; signature: string[]; }>; signStarknetDeclareTransactionSelected(env: Env, origin: string, chainId: string, details: DeclareSignerDetails): Promise; signStarknetDeclareTransactionn(env: Env, _origin: string, vaultId: string, chainId: string, details: DeclareSignerDetails): Promise; privilegeStarknetSignClaimRewards(env: Env, _origin: string, chainId: string, transactions: Call[], details: InvocationsSignerDetails): Promise<{ transactions: Call[]; details: InvocationsSignerDetails; signature: string[]; }>; protected formatEthSignature(sig: { readonly r: Uint8Array; readonly s: Uint8Array; readonly v: number | null; }): string[]; }