import type { EntityFields } from './EntityFields.js'; import type { Schema } from './interface.js'; export type SchemaArgs = S extends { createIfValid: any; pk: any; key: string; prototype: infer U } ? [EntityFields] : S extends ( { queryKey(args: infer Args, ...rest: any): any; } ) ? Args : S extends { [K: string]: any } ? ObjectArgs : never; export type ObjectArgs> = { [K in keyof S]: S[K] extends Schema ? SchemaArgs : never; }[keyof S];