/* eslint-disable @typescript-eslint/no-explicit-any */ import { z, ZodAny, ZodFunction, ZodTuple } from 'zod' export type GenericFunctionRaw = (...args: any[]) => any const GenericFunctionLazySchema: z.ZodType = z.lazy(() => z.function(z.tuple([z.any()]).rest(z.any()), z.any())) export type GenericFunctionLazy = z.infer export const GenericFunctionSchema = z.function(z.tuple([z.any()]).rest(z.any()), z.any()) export type GenericFunction = z.infer export type ZodGenericFunction = ZodFunction, ZodAny> export type GenFun = (...i: Inputs) => Output