import { type Address, type Hex, type TypedDataDefinition } from 'viem'; import type { AccountKind } from '../accounts/types.js'; import type { EvmChainReference } from '../chains/types.js'; import type { ValidatorContributionCodec } from '../modules/validators/types.js'; import type { SigningContext } from './context.js'; import type { ArtifactAssemblyPlan, ConfiguredValidatorTopology, EffectiveSignerSelection, PayloadSigningTask, SigningCheckpointPort, SigningPayloadMaterial, SigningPlan, SigningTranscript } from './types.js'; export interface SessionEnableSigningPlanInput { readonly typedData: TypedDataDefinition; readonly chain: EvmChainReference; readonly configuredTopology: ConfiguredValidatorTopology; readonly effectiveSelection: EffectiveSignerSelection; readonly tasks: readonly PayloadSigningTask[]; readonly signingMaterial?: SigningPayloadMaterial; readonly validatorCodec: ValidatorContributionCodec; readonly validatorFactors?: import('./types.js').ArtifactAssemblyPlan['validatorFactors']; readonly route: Pick; } export declare function createSessionEnableSigningPlan(input: SessionEnableSigningPlanInput): SigningPlan; export declare function signSessionEnablement(input: { readonly planInput: SessionEnableSigningPlanInput; readonly context: SigningContext; readonly checkpoints: SigningCheckpointPort; }): Promise<{ readonly signature: Hex; readonly transcript: SigningTranscript; }>; export declare function resolveSessionEnableChain(input: { readonly accountKind: AccountKind; readonly validator: Address; readonly hashesAndChainIds: readonly { readonly chainId: bigint; }[]; readonly defaultChain: EvmChainReference; }): EvmChainReference; //# sourceMappingURL=session-enable.d.ts.map