import { Model, Namespace, Type } from "@typespec/compiler"; export declare const getTypeguardModel: (m: Model, accessor: string, nestingLevel: number | undefined, currentNamespace: Namespace, knownGuards?: Array<{ filename: string; name: string; }>) => [string, string[]]; /** * Creates the function body for a typeguard * @param t Type to create guards for * @param accessor String by which the type-to-test can be accessed by the code * @param nestingLevel * @param knownGuards Array of names of known typeguards; if type is found in those, no new typeguard will be created and instead a reference to the existing one is produced * @returns Tuple: [function body of the typeguard, array of import filenames (not unique!)] */ export declare const getTypeguard: (t: Type, accessor: string, nestingLevel: number | undefined, currentNamespace: Namespace, knownGuards?: Array<{ filename: string; name: string; }>) => [string, string[]];