import type { RequestResult } from './client'; export type ExtractData = T extends Record ? T[keyof T] : T; export type ExtractModel = T extends Array ? U : T; type MapArgs = { [K in keyof TArgs]: K extends '0' ? (Omit, 'throwOnError'> & { throwOnError?: true; } | Extract) : TArgs[K]; }; type MapSparseArgs = { [K in keyof TArgs]: K extends '0' ? (Omit, 'query' | 'throwOnError'> & { query?: Omit : {}, 'field'> & { field?: TField; }; throwOnError?: true; } | Extract) : TArgs[K]; }; export type DynamicHeyApiFunc any> = TData extends { query?: infer Q; } ? ('field' extends keyof NonNullable ? >> | never = never>(...args: MapSparseArgs, TData, TField>) => Promise<[ TField ] extends [never] ? Awaited> : Omit>, 'data'> & { data: ExtractData extends Array ? Array>, Extract>>>> : Pick>, Extract>>>; }> : (...args: MapArgs>) => Promise>>) : (...args: MapArgs>) => Promise>>; export {};