import { D as ClientMethod, f as Tag } from "./routing-xQnwfH2D.js";
import { z } from "zod";
import { ReferenceObject, SchemaObjectValue, TagObject } from "openapi3-ts/oas32";
interface ReqResCommons {
  makeRef: (key: object | string, value: SchemaObjectValue | ReferenceObject, proposedName?: string) => ReferenceObject;
  path: string;
  method: ClientMethod;
  seenIds: Map<string, z.core.$ZodType>;
}
interface OpenAPIContext extends ReqResCommons {
  isResponse: boolean;
}
type Depicter = (
  zodCtx: {
    zodSchema: z.core.$ZodType;
    jsonSchema: z.core.JSONSchema.BaseSchema;
  },
  oasCtx: OpenAPIContext,
) => z.core.JSONSchema.BaseSchema | SchemaObjectValue;
/** @desc Using defaultIsHeader when returns null or undefined */
type IsHeader = (name: string, method: ClientMethod, path: string) => boolean | null | undefined;
type BrandHandling = Record<string | symbol, Depicter>;
interface TagDetails extends Pick<TagObject, "summary" | "description" | "externalDocs" | "kind"> {
  /** @desc shorthand for externalDocs.url */
  url?: string;
  parent?: Tag;
}
declare const depictTags: (tags: Partial<Record<Tag, string | TagDetails>>) => TagObject[];
/** @desc Ensures the summary string does not exceed the limit */
declare const trimSummary: (summary?: string, limit?: number) => string | undefined;
export { depictTags as a, OpenAPIContext as i, Depicter as n, trimSummary as o, IsHeader as r, BrandHandling as t };
