export type InputTestArgs = { compare?: InputTestArgs['value']; displayMax?: string; displayMin?: string; max?: bigint | number; min?: bigint | number; value?: bigint | number | null | string; }; export type MinimalInputTestArgs = Required< Omit >; export type InputTest = { onFailure?: (args: InputTestArgs) => void; onSuccess?: () => void; test: (args: MinimalInputTestArgs) => boolean; }; export type InputTestBatches = { [id: string]: { defaults?: InputTestArgs & { onSuccess?: () => void; }; onFinishBatch?: () => void; optionalTests?: Array; tests: Array; }; }; export type TestInputFunctionOptions = { inputs?: { [id: string]: Partial; }; isContinueOnFailure?: boolean; isIgnoreOnCallbacks?: boolean; tests?: InputTestBatches; }; export type TestInputFunction = (options?: TestInputFunctionOptions) => boolean;