import { type DcApiMatcher, type DcApiRequest, type IosPresentmentRequest, type IosReaderAuthentication } from './types'; /** * The request as the native layer hands it over, before the actions are attached. * * The two platforms carry different things because they know different things at this point: * Android gets the protocol requests with the picker result, iOS only what the OS parsed out of a * request it has not released yet. */ type NativeRequest = { platform: 'android'; /** Null when the caller is a native app rather than a website. */ origin: string | null; callingPackage: string; /** * Every request the verifier sent, in its order — including protocols this package does not * know, so the indices still line up with what the matcher saw. */ requests: Array<{ protocol: string; data: unknown; }>; /** * Matcher-specific, see {@link parseSelection}: one entry, or one per slot of a picked set. * Null when the request did not come from the credential picker, which only the registry * action goes through. */ selectedEntryIds: string[] | null; matcher: DcApiMatcher; } | { platform: 'ios'; origin: string; presentmentRequests: IosPresentmentRequest[]; readerAuthentications: IosReaderAuthentication[]; }; /** * Turn the native payload into the {@link DcApiRequest} the registered component receives. * * @internal */ export declare function parseRequest(raw: string | NativeRequest): DcApiRequest; export {}; //# sourceMappingURL=request.d.ts.map