import type { Account, Address, Hex } from 'viem'; import type { WebAuthnAccount } from 'viem/account-abstraction'; import type { SigningContext } from '../context.js'; import type { ArtifactAssemblyPlan } from '../types.js'; export interface IndependentOwnerDescriptor { readonly ownerId: string; readonly identity: Address | Hex; readonly kind: 'ecdsa' | 'webauthn'; readonly factorId?: string; readonly factorPublicId?: number | Hex; } export type IndependentOwnerSignatureData = { readonly kind: 'ecdsa'; readonly signer: Address; readonly origin: readonly Hex[]; } | { readonly kind: 'passkey'; readonly publicKey: Hex; readonly origin: readonly { readonly webauthn: { readonly authenticatorData: Hex; readonly challengeIndex?: number; readonly clientDataJSON: string; readonly typeIndex?: number; readonly userVerificationRequired?: boolean; }; readonly signature: Hex; }[]; }; export type IndependentOwnerSignature = ({ readonly intentId: string; } & IndependentOwnerSignatureData) | { readonly intentId: string; readonly kind: 'multi-factor'; readonly validatorId: number | Hex; readonly signature: IndependentOwnerSignatureData; }; export declare function assembleIndependentIntentArtifact(input: { readonly intentId: string; readonly originIndex: number; readonly originCount: number; readonly signatures: readonly IndependentOwnerSignature[]; readonly owners: readonly IndependentOwnerDescriptor[]; readonly artifact: ArtifactAssemblyPlan; readonly context: SigningContext; }): Hex; export type IndependentSigner = Account | WebAuthnAccount; //# sourceMappingURL=independent.d.ts.map