···2222 private _exported: boolean;
2323 /**
2424 * External module name if this symbol is imported from a module not managed
2525- * by the project (e.g. "zod", "lodash").
2525+ * by the project (e.g., "zod", "lodash").
2626 *
2727 * @default undefined
2828 */
+1-1
packages/codegen-core/src/symbols/types.ts
···1616 exported?: boolean;
1717 /**
1818 * External module name if this symbol is imported from a module not managed
1919- * by the project (e.g. "zod", "lodash").
1919+ * by the project (e.g., "zod", "lodash").
2020 *
2121 * @default undefined
2222 */
+1-1
packages/custom-client/src/core/types.ts
···6868 requestValidator?: (data: unknown) => Promise<unknown>;
6969 /**
7070 * A function transforming response data before it's returned. This is useful
7171- * for post-processing data, e.g. converting ISO strings into Date objects.
7171+ * for post-processing data, e.g., converting ISO strings into Date objects.
7272 */
7373 responseTransformer?: (data: unknown) => Promise<unknown>;
7474 /**
+2-2
packages/json-schema-ref-parser/src/bundle.ts
···213213 }
214214215215 const newEntry: InventoryEntry = {
216216- $ref, // The JSON Reference (e.g. {$ref: string})
216216+ $ref, // The JSON Reference (e.g., {$ref: string})
217217 circular: pointer.circular, // Is this $ref pointer DIRECTLY circular? (i.e. it references itself)
218218 depth, // How far from the JSON Schema root is this $ref pointer?
219219 extended, // Does this $ref extend its resolved value? (i.e. it has extra properties, in addition to "$ref")
···240240 // Recursively crawl the resolved value.
241241 // When the resolution followed a $ref chain to a different file,
242242 // use the resolved file as the base path so that local $ref values
243243- // (e.g. #/components/schemas/SiblingSchema) inside the resolved
243243+ // (e.g., #/components/schemas/SiblingSchema) inside the resolved
244244 // value resolve against the correct file.
245245 if (!existingEntry || external) {
246246 let crawlPath = pointer.path;
+3-3
packages/json-schema-ref-parser/src/pointer.ts
···205205 /**
206206 * Parses a JSON pointer (or a path containing a JSON pointer in the hash)
207207 * and returns an array of the pointer's tokens.
208208- * (e.g. "schema.json#/definitions/person/name" => ["definitions", "person", "name"])
208208+ * (e.g., "schema.json#/definitions/person/name" => ["definitions", "person", "name"])
209209 *
210210 * The pointer is parsed according to RFC 6901
211211 * {@link https://tools.ietf.org/html/rfc6901#section-3}
···244244 /**
245245 * Creates a JSON pointer path, by joining one or more tokens to a base path.
246246 *
247247- * @param base - The base path (e.g. "schema.json#/definitions/person")
248248- * @param tokens - The token(s) to append (e.g. ["name", "first"])
247247+ * @param base - The base path (e.g., "schema.json#/definitions/person")
248248+ * @param tokens - The token(s) to append (e.g., ["name", "first"])
249249 * @returns
250250 */
251251 static join(base: string, tokens: string | string[]) {
+1-1
packages/json-schema-ref-parser/src/ref.ts
···4646 $refs: $Refs<S>;
47474848 /**
4949- * Indicates the type of {@link $Ref#path} (e.g. "file", "http", etc.)
4949+ * Indicates the type of {@link $Ref#path} (e.g., "file", "http", etc.)
5050 */
5151 pathType: string | unknown;
5252
···3131 client?: PluginClientNames | boolean;
3232 /**
3333 * Generate code examples for SDK operations and attach them to the
3434- * input source (e.g. via `x-codeSamples`).
3434+ * input source (e.g., via `x-codeSamples`).
3535 *
3636 * Set to `false` to disable example generation entirely, or provide an
3737 * object for fine-grained control over the output and post-processing.
+40-40
packages/openapi-python/src/py-dsl/index.ts
···7474import { safeKeywordName } from './utils/name';
75757676const pyDsl = {
7777- /** Creates an array literal expression (e.g. `[1, 2, 3]`). */
7777+ /** Creates an array literal expression (e.g., `[1, 2, 3]`). */
7878 // array: (...args: ConstructorParameters<typeof ArrayTsDsl>) => new ArrayTsDsl(...args),
7979- /** Creates an `as` type assertion expression (e.g. `value as Type`). */
7979+ /** Creates an `as` type assertion expression (e.g., `value as Type`). */
8080 // as: (...args: ConstructorParameters<typeof AsTsDsl>) => new AsTsDsl(...args),
81818282- /** Creates a property access expression (e.g. `obj.foo`). */
8282+ /** Creates a property access expression (e.g., `obj.foo`). */
8383 attr: (...args: ConstructorParameters<typeof AttrPyDsl>) => new AttrPyDsl(...args),
84848585- /** Creates an await expression (e.g. `await promise`). */
8585+ /** Creates an await expression (e.g., `await promise`). */
8686 // await: (...args: ConstructorParameters<typeof AwaitTsDsl>) => new AwaitTsDsl(...args),
87878888- /** Creates a binary expression (e.g. `a + b`). */
8888+ /** Creates a binary expression (e.g., `a + b`). */
8989 binary: (...args: ConstructorParameters<typeof BinaryPyDsl>) => new BinaryPyDsl(...args),
90909191 /** Creates a statement block. */
···9494 /** Creates a break statement. */
9595 break: (...args: ConstructorParameters<typeof BreakPyDsl>) => new BreakPyDsl(...args),
96969797- /** Creates a function or method call expression (e.g. `fn(arg)`). */
9797+ /** Creates a function or method call expression (e.g., `fn(arg)`). */
9898 call: (...args: ConstructorParameters<typeof CallPyDsl>) => new CallPyDsl(...args),
9999100100 /** Creates a class declaration or expression. */
···103103 /** Creates a continue statement. */
104104 continue: (...args: ConstructorParameters<typeof ContinuePyDsl>) => new ContinuePyDsl(...args),
105105106106- /** Creates a decorator expression (e.g. `@decorator`). */
106106+ /** Creates a decorator expression (e.g., `@decorator`). */
107107 // decorator: (...args: ConstructorParameters<typeof DecoratorTsDsl>) => new DecoratorTsDsl(...args),
108108109109- /** Creates a dictionary expression (e.g. `{ 'a': 1 }`). */
109109+ /** Creates a dictionary expression (e.g., `{ 'a': 1 }`). */
110110 dict: (...args: ConstructorParameters<typeof DictPyDsl>) => new DictPyDsl(...args),
111111112112 /** Creates a Python docstring (`"""..."""`). */
···121121 /** Creates a field declaration in a class or object. */
122122 // field: (...args: ConstructorParameters<typeof FieldTsDsl>) => new FieldTsDsl(...args),
123123124124- /** Creates a for statement (e.g. `for x in items:`). */
124124+ /** Creates a for statement (e.g., `for x in items:`). */
125125 for: (...args: ConstructorParameters<typeof ForPyDsl>) => new ForPyDsl(...args),
126126127127 /** Converts a runtime value into a corresponding expression node. */
···139139 /** Creates a Python comment (`# ...`). */
140140 hint: (...args: ConstructorParameters<typeof HintPyDsl>) => new HintPyDsl(...args),
141141142142- /** Creates an identifier (e.g. `foo`). */
142142+ /** Creates an identifier (e.g., `foo`). */
143143 id: (...args: ConstructorParameters<typeof IdPyDsl>) => new IdPyDsl(...args),
144144145145 /** Creates an if statement. */
···151151 /** Creates an initialization block or statement. */
152152 // init: (...args: ConstructorParameters<typeof InitTsDsl>) => new InitTsDsl(...args),
153153154154- /** Creates a keyword argument expression (e.g. `name=value`). */
154154+ /** Creates a keyword argument expression (e.g., `name=value`). */
155155 kwarg: (...args: ConstructorParameters<typeof KwargPyDsl>) => new KwargPyDsl(...args),
156156157157 /** Creates a lazy, context-aware node with deferred evaluation. */
158158 lazy: <T extends py.Node>(...args: ConstructorParameters<typeof LazyPyDsl<T>>) =>
159159 new LazyPyDsl<T>(...args),
160160161161- /** Creates a list expression (e.g. `[1, 2, 3]`). */
161161+ /** Creates a list expression (e.g., `[1, 2, 3]`). */
162162 list: (...args: ConstructorParameters<typeof ListPyDsl>) => new ListPyDsl(...args),
163163164164- /** Creates a literal value (e.g. string, number, boolean). */
164164+ /** Creates a literal value (e.g., string, number, boolean). */
165165 literal: (...args: ConstructorParameters<typeof LiteralPyDsl>) => new LiteralPyDsl(...args),
166166167167 /** Creates an enum member declaration. */
···177177 /** Creates a negation expression (`-x`). */
178178 // neg: (...args: ConstructorParameters<typeof PrefixTsDsl>) => new PrefixTsDsl(...args).neg(),
179179180180- /** Creates a new expression (e.g. `new ClassName()`). */
180180+ /** Creates a new expression (e.g., `new ClassName()`). */
181181 // new: (...args: ConstructorParameters<typeof NewTsDsl>) => new NewTsDsl(...args),
182182183183 /** Creates a newline (for formatting purposes). */
···195195 /** Creates a pattern for destructuring or matching. */
196196 // pattern: (...args: ConstructorParameters<typeof PatternTsDsl>) => new PatternTsDsl(...args),
197197198198- /** Creates a prefix unary expression (e.g. `-x`, `!x`, `~x`). */
198198+ /** Creates a prefix unary expression (e.g., `-x`, `!x`, `~x`). */
199199 // prefix: (...args: ConstructorParameters<typeof PrefixTsDsl>) => new PrefixTsDsl(...args),
200200201201- /** Creates an object literal property (e.g. `{ foo: bar }`). */
201201+ /** Creates an object literal property (e.g., `{ foo: bar }`). */
202202 // prop: (...args: ConstructorParameters<typeof ObjectPropTsDsl>) => new ObjectPropTsDsl(...args),
203203204204 /** Creates a raise statement. */
205205 raise: (...args: ConstructorParameters<typeof RaisePyDsl>) => new RaisePyDsl(...args),
206206207207- /** Creates a regular expression literal (e.g. `/foo/gi`). */
207207+ /** Creates a regular expression literal (e.g., `/foo/gi`). */
208208 // regexp: (...args: ConstructorParameters<typeof RegExpTsDsl>) => new RegExpTsDsl(...args),
209209210210 /** Creates a return statement. */
211211 return: (...args: ConstructorParameters<typeof ReturnPyDsl>) => new ReturnPyDsl(...args),
212212213213- /** Creates a set expression (e.g. `{1, 2, 3}`). */
213213+ /** Creates a set expression (e.g., `{1, 2, 3}`). */
214214 set: (...args: ConstructorParameters<typeof SetPyDsl>) => new SetPyDsl(...args),
215215216216 /** Creates a setter method declaration. */
···219219 /** Wraps an expression or statement-like value into a `StmtPyDsl`. */
220220 stmt: (...args: ConstructorParameters<typeof StmtPyDsl>) => new StmtPyDsl(...args),
221221222222- /** Creates a subscript expression (e.g. `obj[index]` or `Type[Param]`). */
222222+ /** Creates a subscript expression (e.g., `obj[index]` or `Type[Param]`). */
223223 subscript: (...args: ConstructorParameters<typeof SubscriptPyDsl>) => new SubscriptPyDsl(...args),
224224225225 /** Creates a template literal expression. */
···231231 // /** Creates a throw statement. */
232232 // throw: (...args: ConstructorParameters<typeof ThrowTsDsl>) => new ThrowTsDsl(...args),
233233234234- /** Creates a syntax token (e.g. `?`, `readonly`, `+`, `-`). */
234234+ /** Creates a syntax token (e.g., `?`, `readonly`, `+`, `-`). */
235235 // token: (...args: ConstructorParameters<typeof TokenTsDsl>) => new TokenTsDsl(...args),
236236237237 /** Creates a try/except/finally statement. */
238238 try: (...args: ConstructorParameters<typeof TryPyDsl>) => new TryPyDsl(...args),
239239240240- /** Creates a tuple expression (e.g. `(1, 2, 3)`). */
240240+ /** Creates a tuple expression (e.g., `(1, 2, 3)`). */
241241 tuple: (...args: ConstructorParameters<typeof TuplePyDsl>) => new TuplePyDsl(...args),
242242243243- /** Creates a basic type reference or type expression (e.g. Foo or Foo<T>). */
243243+ /** Creates a basic type reference or type expression (e.g., Foo or Foo<T>). */
244244 // type: Object.assign(
245245 // (...args: ConstructorParameters<typeof TypeExprTsDsl>) => new TypeExprTsDsl(...args),
246246 // {
247247- /** Creates a type alias declaration (e.g. `type Foo = Bar`). */
247247+ /** Creates a type alias declaration (e.g., `type Foo = Bar`). */
248248 // alias: (...args: ConstructorParameters<typeof TypeAliasTsDsl>) => new TypeAliasTsDsl(...args),
249249- /** Creates an intersection type (e.g. `A & B`). */
249249+ /** Creates an intersection type (e.g., `A & B`). */
250250 // and: (...args: ConstructorParameters<typeof TypeAndTsDsl>) => new TypeAndTsDsl(...args),
251251- /** Creates a qualified type reference (e.g. Foo.Bar). */
251251+ /** Creates a qualified type reference (e.g., Foo.Bar). */
252252 // attr: (...args: ConstructorParameters<typeof TypeAttrTsDsl>) => new TypeAttrTsDsl(...args),
253253- /** Creates a basic type reference or type expression (e.g. Foo or Foo<T>). */
253253+ /** Creates a basic type reference or type expression (e.g., Foo or Foo<T>). */
254254 // expr: (...args: ConstructorParameters<typeof TypeExprTsDsl>) => new TypeExprTsDsl(...args),
255255 /** Converts a runtime value into a corresponding type expression node. */
256256 // fromValue: (...args: Parameters<typeof typeValue>) => typeValue(...args),
257257- /** Creates a function type node (e.g. `(a: string) => number`). */
257257+ /** Creates a function type node (e.g., `(a: string) => number`). */
258258 // func: (...args: ConstructorParameters<typeof TypeFuncTsDsl>) => new TypeFuncTsDsl(...args),
259259- /** Creates an indexed-access type (e.g. `Foo<T>[K]`). */
259259+ /** Creates an indexed-access type (e.g., `Foo<T>[K]`). */
260260 // idx: (...args: ConstructorParameters<typeof TypeIdxTsDsl>) => new TypeIdxTsDsl(...args),
261261- /** Creates a literal type node (e.g. 'foo', 42, or true). */
261261+ /** Creates a literal type node (e.g., 'foo', 42, or true). */
262262 // literal: (...args: ConstructorParameters<typeof TypeLiteralTsDsl>) =>
263263 // new TypeLiteralTsDsl(...args),
264264- /** Creates a mapped type (e.g. `{ [K in keyof T]: U }`). */
264264+ /** Creates a mapped type (e.g., `{ [K in keyof T]: U }`). */
265265 // mapped: (...args: ConstructorParameters<typeof TypeMappedTsDsl>) =>
266266 // new TypeMappedTsDsl(...args),
267267- /** Creates a type literal node (e.g. { foo: string }). */
267267+ /** Creates a type literal node (e.g., { foo: string }). */
268268 // object: (...args: ConstructorParameters<typeof TypeObjectTsDsl>) =>
269269 // new TypeObjectTsDsl(...args),
270270- /** Creates a type operator node (e.g. `readonly T`, `keyof T`, `unique T`). */
270270+ /** Creates a type operator node (e.g., `readonly T`, `keyof T`, `unique T`). */
271271 // operator: (...args: ConstructorParameters<typeof TypeOperatorTsDsl>) =>
272272 // new TypeOperatorTsDsl(...args),
273273- /** Represents a union type (e.g. `A | B | C`). */
273273+ /** Represents a union type (e.g., `A | B | C`). */
274274 // or: (...args: ConstructorParameters<typeof TypeOrTsDsl>) => new TypeOrTsDsl(...args),
275275- /** Creates a type parameter (e.g. `<T>`). */
275275+ /** Creates a type parameter (e.g., `<T>`). */
276276 // param: (...args: ConstructorParameters<typeof TypeParamTsDsl>) => new TypeParamTsDsl(...args),
277277- /** Creates a type query node (e.g. `typeof Foo`). */
277277+ /** Creates a type query node (e.g., `typeof Foo`). */
278278 // query: (...args: ConstructorParameters<typeof TypeQueryTsDsl>) => new TypeQueryTsDsl(...args),
279279- /** Builds a TypeScript template literal *type* (e.g. `${Foo}-${Bar}` as a type). */
279279+ /** Builds a TypeScript template literal *type* (e.g., `${Foo}-${Bar}` as a type). */
280280 // template: (...args: ConstructorParameters<typeof TypeTemplateTsDsl>) =>
281281 // new TypeTemplateTsDsl(...args),
282282- /** Creates a tuple type (e.g. [A, B, C]). */
282282+ /** Creates a tuple type (e.g., [A, B, C]). */
283283 // tuple: (...args: ConstructorParameters<typeof TypeTupleTsDsl>) => new TypeTupleTsDsl(...args),
284284 // },
285285 // ),
286286- /** Creates a `typeof` expression (e.g. `typeof value`). */
286286+ /** Creates a `typeof` expression (e.g., `typeof value`). */
287287 // typeofExpr: (...args: ConstructorParameters<typeof TypeOfExprTsDsl>) =>
288288 // new TypeOfExprTsDsl(...args),
289289290290 /** Creates a variable assignment. */
291291 var: (...args: ConstructorParameters<typeof VarPyDsl>) => new VarPyDsl(...args),
292292293293- /** Creates a while statement (e.g. `while x:`). */
293293+ /** Creates a while statement (e.g., `while x:`). */
294294 while: (...args: ConstructorParameters<typeof WhilePyDsl>) => new WhilePyDsl(...args),
295295296296- /** Creates a with statement (e.g. `with open(f) as file:`). */
296296+ /** Creates a with statement (e.g., `with open(f) as file:`). */
297297 with: (...args: ConstructorParameters<typeof WithPyDsl>) => new WithPyDsl(...args),
298298};
299299
+3-3
packages/openapi-python/src/py-dsl/mixins/expr.ts
···55import type { BaseCtor, DropFirst, MixinCtor } from './types';
6677export interface ExprMethods extends Node {
88- /** Accesses a property on the current expression (e.g. `this.foo`). */
88+ /** Accesses a property on the current expression (e.g., `this.foo`). */
99 attr(...args: DropFirst<Parameters<typeof f.attr>>): ReturnType<typeof f.attr>;
1010- /** Calls the current expression (e.g. `fn(arg1, arg2)`). */
1010+ /** Calls the current expression (e.g., `fn(arg1, arg2)`). */
1111 call(...args: DropFirst<Parameters<typeof f.call>>): ReturnType<typeof f.call>;
1212 /** Produces a `return` statement returning the current expression. */
1313 return(): ReturnType<typeof f.return>;
1414- /** Produces a subscript/slice expression (e.g. `expr[args]`). */
1414+ /** Produces a subscript/slice expression (e.g., `expr[args]`). */
1515 slice(...args: DropFirst<Parameters<typeof f.slice>>): ReturnType<typeof f.slice>;
1616}
1717
···6262 querySerializer?: QuerySerializer | QuerySerializerOptions;
6363 /**
6464 * A function transforming response data before it's returned. This is useful
6565- * for post-processing data, e.g. converting ISO strings into Date objects.
6565+ * for post-processing data, e.g., converting ISO strings into Date objects.
6666 */
6767 responseTransformer?: (data: unknown) => Promise<unknown>;
6868 /**
···7878 requestValidator?: (data: unknown) => Promise<unknown>;
7979 /**
8080 * A function transforming response data before it's returned. This is useful
8181- * for post-processing data, e.g. converting ISO strings into Date objects.
8181+ * for post-processing data, e.g., converting ISO strings into Date objects.
8282 */
8383 responseTransformer?: (data: unknown) => Promise<unknown>;
8484 /**
···1111 Plugin.UserExports & {
1212 /**
1313 * Customise the schema name. By default, `{{name}}Schema` is used. `name` is a
1414- * valid JavaScript/TypeScript identifier, e.g. if your schema name is
1414+ * valid JavaScript/TypeScript identifier, e.g., if your schema name is
1515 * "Foo-Bar", `name` value would be "FooBar".
1616 *
1717 * @default '{{name}}Schema'
···33333434/**
3535 * Collects and resolves all operation parameters for flattened SDK signatures.
3636- * - Prefixes all conflicting names with their location (e.g. path_foo, query_foo)
3636+ * - Prefixes all conflicting names with their location (e.g., path_foo, query_foo)
3737 * - Returns a flat map of resolved parameter names to their metadata
3838 */
3939export function getSignatureParameters({
···7575 addParameter(key, 'body');
7676 }
7777 } else if (operation.body.schema.$ref) {
7878- // alias body for more ergonomic naming, e.g. user if the type is User
7878+ // alias body for more ergonomic naming, e.g., user if the type is User
7979 const name = refToName(operation.body.schema.$ref);
8080 const key = toCase(name, 'camelCase');
8181 addParameter(key, 'body');
···3030 client?: PluginClientNames | boolean;
3131 /**
3232 * Generate code examples for SDK operations and attach them to the
3333- * input source (e.g. via `x-codeSamples`).
3333+ * input source (e.g., via `x-codeSamples`).
3434 *
3535 * Set to `false` to disable example generation entirely, or provide an
3636 * object for fine-grained control over the output and post-processing.
···336336 });
337337 if (!nodes.length) return;
338338339339- // For nullable union responses (e.g. anyOf: [SomeSchema, null]), wrap the
339339+ // For nullable union responses (e.g., anyOf: [SomeSchema, null]), wrap the
340340 // transformation in a null guard so that null data is returned as-is.
341341 // We require nodes.length >= 2 because we need at least one transformation
342342 // statement AND a return statement (empty .do() would fail validation).
+4-4
packages/openapi-ts/src/ts-dsl/decl/pattern.ts
···99const Mixed = TsDsl<ts.BindingName>;
10101111/**
1212- * Builds binding patterns (e.g. `{ foo, bar }`, `[a, b, ...rest]`).
1212+ * Builds binding patterns (e.g., `{ foo, bar }`, `[a, b, ...rest]`).
1313 */
1414export class PatternTsDsl extends Mixed {
1515 readonly '~dsl' = 'PatternTsDsl';
···2828 return this.missingRequiredCalls().length === 0;
2929 }
30303131- /** Defines an array pattern (e.g. `[a, b, c]`). */
3131+ /** Defines an array pattern (e.g., `[a, b, c]`). */
3232 array(...props: ReadonlyArray<string> | [ReadonlyArray<string>]): this {
3333 const values = props[0] instanceof Array ? [...props[0]] : (props as ReadonlyArray<string>);
3434 this.pattern = { kind: 'array', values };
3535 return this;
3636 }
37373838- /** Defines an object pattern (e.g. `{ a, b: alias }`). */
3838+ /** Defines an object pattern (e.g., `{ a, b: alias }`). */
3939 object(...props: ReadonlyArray<MaybeArray<string> | Record<string, string>>): this {
4040 const entries: Record<string, string> = {};
4141 for (const p of props) {
···4747 return this;
4848 }
49495050- /** Adds a spread element (e.g. `...rest`, `...options`, `...args`). */
5050+ /** Adds a spread element (e.g., `...rest`, `...options`, `...args`). */
5151 spread(name: string): this {
5252 this._spread = name;
5353 return this;
···7171export type SortKey = [SortGroup, SortDistance, SortModule];
72727373export type ModuleExport = Omit<ExportModule, 'from'> & {
7474- /** Module specifier for re-exports, e.g. `./foo`. */
7474+ /** Module specifier for re-exports, e.g., `./foo`. */
7575 modulePath: string;
7676};
77777878export type ModuleImport = Omit<ImportModule, 'from'> & {
7979- /** Module specifier for imports, e.g. `./foo`. */
7979+ /** Module specifier for imports, e.g., `./foo`. */
8080 modulePath: string;
8181};
8282
+1-1
packages/shared/src/ir/graph.ts
···1414/**
1515 * Checks if a pointer matches a known top-level IR component (schema, parameter, etc) and returns match info.
1616 *
1717- * @param pointer - The IR pointer string (e.g. '#/components/schemas/Foo')
1717+ * @param pointer - The IR pointer string (e.g., '#/components/schemas/Foo')
1818 * @param kind - (Optional) The component kind to check
1919 * @returns { matched: true, kind: IrTopLevelKind } | { matched: false } - Whether it matched, and the matched kind if so
2020 */
+1-1
packages/shared/src/ir/schema.ts
···11import type { IR } from './types';
2233/**
44- * Ensure we don't produce redundant types, e.g. string | string.
44+ * Ensure we don't produce redundant types, e.g., string | string.
55 */
66export function deduplicateSchema<T extends IR.SchemaObject>({
77 detectFormat = true,