import { type ContextModule, type TransactionSubset } from "@ledgerhq/context-module"; import { type CommandErrorResult, type DeviceActionState, type ExecuteDeviceActionReturnType, type OpenAppDAError, type OpenAppDARequiredInteraction, type UserInteractionRequired } from "@ledgerhq/device-management-kit"; import { type GetConfigCommandResponse } from "../app-binder/GetConfigCommandTypes"; import { type ClearSigningType } from "../model/ClearSigningType"; import { type EvmAddressBook } from "../model/EvmAddressBook"; import { type Signature } from "../model/Signature"; import { type TransactionOptions } from "../model/TransactionOptions"; import { type TransactionType } from "../model/TransactionType"; import { type EthErrorCodes } from "../../internal/app-binder/command/utils/ethAppErrors"; import { type ContextWithSubContexts } from "../../internal/app-binder/task/BuildFullContextsTask"; import { type TransactionMapperService } from "../../internal/transaction/service/mapper/TransactionMapperService"; import { type TransactionParserService } from "../../internal/transaction/service/parser/TransactionParserService"; export declare enum SignTransactionDAStep { OPEN_APP = "signer.eth.steps.openApp", GET_APP_CONFIG = "signer.eth.steps.getAppConfig", GET_ADDRESS = "signer.eth.steps.getAddress", WEB3_CHECKS_OPT_IN = "signer.eth.steps.web3ChecksOptIn", WEB3_CHECKS_OPT_IN_RESULT = "signer.eth.steps.web3ChecksOptInResult", PARSE_TRANSACTION = "signer.eth.steps.parseTransaction", BUILD_CONTEXTS = "signer.eth.steps.buildContexts", PROVIDE_CONTEXTS = "signer.eth.steps.provideContexts", SIGN_TRANSACTION = "signer.eth.steps.signTransaction", BLIND_SIGN_TRANSACTION_FALLBACK = "signer.eth.steps.blindSignTransactionFallback", DETECT_BLIND_SIGNING = "signer.eth.steps.detectBlindSigning" } export type SignTransactionDAOutput = Signature; export type SignTransactionDAInput = { readonly derivationPath: string; readonly transaction: Uint8Array; readonly mapper: TransactionMapperService; readonly parser: TransactionParserService; readonly contextModule: ContextModule; /** Defaults to `EMPTY_EVM_ADDRESS_BOOK`, which matches no recipient. */ readonly addressBook?: EvmAddressBook; readonly options: TransactionOptions; }; export type SignTransactionDAError = OpenAppDAError | CommandErrorResult["error"]; type SignTransactionDARequiredInteraction = OpenAppDARequiredInteraction | UserInteractionRequired.Web3ChecksOptIn | UserInteractionRequired.SignTransaction; export type SignTransactionDAIntermediateValue = { requiredUserInteraction: SignTransactionDARequiredInteraction; step: Exclude; } | { requiredUserInteraction: UserInteractionRequired.None; step: SignTransactionDAStep.WEB3_CHECKS_OPT_IN_RESULT; result: boolean; }; export type SignTransactionDAState = DeviceActionState; export type SignTransactionDAInternalState = { readonly error: SignTransactionDAError | null; readonly appConfig: GetConfigCommandResponse | null; readonly subset: TransactionSubset | null; readonly contexts: ContextWithSubContexts[]; readonly clearSigningType: ClearSigningType | null; readonly contextErrorCount: number; readonly transactionType: TransactionType | null; readonly signature: Signature | null; readonly isBlindSign: boolean | null; readonly usedFallback: boolean; }; export type SignTransactionDAReturnType = ExecuteDeviceActionReturnType; export {}; //# sourceMappingURL=SignTransactionDeviceActionTypes.d.ts.map