Endo
    Preparing search index...

    Type Alias TypeFromMethodGuard<G>

    TypeFromMethodGuard: G extends {
        payload: {
            argGuards: infer Args extends readonly any[];
            callKind: infer CK;
            optionalArgGuards?: infer OptArgs extends readonly any[];
            restArgGuard?: infer Rest;
            returnGuard: infer Ret;
        };
    }
        ? OptArgs extends readonly any[]
            ? CK extends "async"
                ? (
                    ...args: TFBuildArgs<Args, OptArgs, Rest>,
                ) => Promise<TypeFromReturnGuard<Ret>>
                : (...args: TFBuildArgs<Args, OptArgs, Rest>) => TypeFromReturnGuard<Ret>
            : CK extends "async"
                ? (
                    ...args: TFBuildArgs<Args, [], Rest>,
                ) => Promise<TypeFromReturnGuard<Ret>>
                : (...args: TFBuildArgs<Args, [], Rest>) => TypeFromReturnGuard<Ret>
        : (...args: any[]) => any

    Infer a function signature from a MethodGuard.

    Type Parameters

    • G
    const mg = M.call(M.string(), M.nat()).returns(M.boolean());
    type Fn = TypeFromMethodGuard<typeof mg>;
    // (arg0: string, arg1: bigint) => boolean