import { P as ParserInterface, a as ParserInterface_statics, R as ResultOrError } from '../sdcParserModule-BpvTEtgQ.js'; import { OverrideState } from 'scandit-web-datacapture-core'; import '../parser/ParserDataFormat.js'; import '../parser/private/sdcParserInternal.js'; import '../parser/private/sdcParserCommon.js'; type ValuesOf = T[keyof T]; type Djinni = "djinni"; type DjinniActionMessageKey = `${Djinni}Action`; type DjinniResultMessageKey = `${Djinni}Result`; type ClassInfo = { [K in keyof T]: T[K] extends (...arguments_: any[]) => any ? { method: T[K]; methodName: K extends string ? K : never; className: T extends { constructor: { name: infer ClassName; }; } ? ClassName : never; args: Parameters; result: ReturnType; } : never; }; interface BaseAction { id: number; instanceId?: string; command: DjinniActionMessageKey; } interface DjinniAction extends BaseAction { className: ValuesOf>["className"]; methodName: ValuesOf>["methodName"]; args: ValuesOf>["args"]; } interface DjinniResult { type: DjinniResultMessageKey; payload: { id: number; instanceId?: string; className: ValuesOf>["className"]; methodName: ValuesOf>["methodName"]; result: ValuesOf>["result"]; }; } type ParserInterfaceActionMessage = DjinniAction | ParserCreateAction; type ParserInterfaceResultMessage = DjinniResult | ParserCreateResult; interface ParserCreateAction extends BaseAction { methodName: "create"; className: "ParserInterface"; args: [ ...Parameters, { libraryLocation: string; overrideSimdSupport: OverrideState; overrideThreadsSupport: OverrideState; verifyResponseHash: boolean; referredOrigin: string; } ]; } interface ParserCreateResult { type: DjinniResultMessageKey; payload: { id: number; instanceId?: string; className: "ParserInterface"; methodName: "create"; result: ResultOrError; }; } type ProxyableActionMessage = ParserInterfaceActionMessage; type ProxyableResultMessage = ParserInterfaceResultMessage; interface SenderParserWorker extends Omit { onmessage: ((this: Worker, event_: MessageEvent) => void) | null; postMessage: (message: ProxyableActionMessage, transfer?: Transferable[]) => void; } interface ReceiverParserWorker extends Omit { onmessage: ((this: Worker, event_: MessageEvent) => void) | null; postMessage: (message: ProxyableResultMessage, transfer?: Transferable[]) => void; } interface ParserModule extends EmscriptenModule { ParserInterface: ParserInterface_statics; } type AugmentedWorker = ReceiverParserWorker & { Module: M; }; interface ModuleHandler { get: () => M; set: (v: M) => void; } export type { AugmentedWorker, ClassInfo, Djinni, DjinniActionMessageKey, ModuleHandler, ParserInterfaceActionMessage, ParserInterfaceResultMessage, ParserModule, ProxyableActionMessage, ProxyableResultMessage, ReceiverParserWorker, SenderParserWorker, ValuesOf };