/**
 * Convert a TypeScript `ts.Type` to a JSON Schema fragment.
 *
 * Use case: inline anonymous types where `typescript-json-schema` can't
 * be invoked by name. Specifically — event handler parameter types
 * like `(event: { tab: string }) => void` need a schema for `{ tab: string }`
 * but the type isn't bound to a named declaration.
 *
 * Supported subset:
 *   - primitives: string, number, boolean, bigint (→ integer), null,
 *     undefined (→ null)
 *   - literal types: string/number/boolean (→ const)
 *   - unions and intersections (→ anyOf / allOf, with string-union →
 *     enum optimization)
 *   - arrays (`X[]`, `Array<X>`)
 *   - tuples (fixed-length array)
 *   - object types with `properties` walked via checker
 *   - Date → string + `format: date-time`
 *
 * Not supported: generics with TypeVars (returns `{}`), conditional
 * types, mapped types beyond shape inspection.
 */
import type { JSONSchema } from '../types';
/**
 * Convert a `ts.Type` to a JSON Schema fragment.
 *
 * ASSUMES:
 *   - `type` is a `ts.Type` from `checker.getTypeAtLocation(node)`.
 *   - `checker` is a TypeScript program type-checker.
 *
 * RETURNS: best-effort JSON Schema. Empty `{}` means "unknown / any".
 *
 * SAFETY: `depth` and `visited` together prevent infinite recursion on
 * cyclic types (e.g. `interface Node { children: Node[] }`).
 * MAX_DEPTH = 12 caps deeply-nested generics.
 */
export declare const typeToSchema: (type: any, checker: any, depth?: number, visited?: Set<any>) => JSONSchema;
//# sourceMappingURL=typeToSchema.d.ts.map