/
githubmirror
/
trpc
Обзор
Документация
Войти
/
githubmirror
/
trpc
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
packages/openapi/test/routers/nodeModulesJsDocRouter-heyapi/sdk.gen.ts
71 строка
3 KB
Nick Lucas
feat: OpenAPI Cyclic Types support (#7283)
28 мар 2026, 12:57
Не верифицирован
28 мар 2026, 12:57
bdf2c65
Код
Авторство
О чём код?
// This file is auto-generated by @hey-api/openapi-ts import type { Client, Options as Options2, TDataShape } from './client'; import { client } from './client.gen'; import type { LocalNodeModulesImportData, LocalNodeModulesImportErrors, LocalNodeModulesImportResponses, MonorepoImportData, MonorepoImportErrors, MonorepoImportResponses, RootNodeModulesImportData, RootNodeModulesImportErrors, RootNodeModulesImportResponses } from './types.gen'; export type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & { /** * You can provide a client instance returned by `createClient()` instead of * individual options. This might be also useful if you want to implement a * custom client. */ client?: Client; /** * You can pass arbitrary values through the `meta` object. This can be * used to access values that aren't defined as part of the SDK function. */ meta?: Record<string, unknown>; }; class HeyApiClient { protected client: Client; constructor(args?: { client?: Client; }) { this.client = args?.client ?? client; } } class HeyApiRegistry<T> { private readonly defaultKey = 'default'; private readonly instances: Map<string, T> = new Map(); get(key?: string): T { const instance = this.instances.get(key ?? this.defaultKey); if (!instance) { throw new Error(`No SDK client found. Create one with "new Sdk()" to fix this error.`); } return instance; } set(value: T, key?: string): void { this.instances.set(key ?? this.defaultKey, value); } } export class Sdk extends HeyApiClient { public static readonly __registry = new HeyApiRegistry<Sdk>(); constructor(args?: { client?: Client; key?: string; }) { super(args); Sdk.__registry.set(this, args?.key); } public monorepoImport<ThrowOnError extends boolean = false>(options?: Options<MonorepoImportData, ThrowOnError>) { return (options?.client ?? this.client).get<MonorepoImportResponses, MonorepoImportErrors, ThrowOnError>({ url: '/monorepoImport', ...options }); } public localNodeModulesImport<ThrowOnError extends boolean = false>(options?: Options<LocalNodeModulesImportData, ThrowOnError>) { return (options?.client ?? this.client).get<LocalNodeModulesImportResponses, LocalNodeModulesImportErrors, ThrowOnError>({ url: '/localNodeModulesImport', ...options }); } public rootNodeModulesImport<ThrowOnError extends boolean = false>(options?: Options<RootNodeModulesImportData, ThrowOnError>) { return (options?.client ?? this.client).get<RootNodeModulesImportResponses, RootNodeModulesImportErrors, ThrowOnError>({ url: '/rootNodeModulesImport', ...options }); } }