@brigadasos/nadeshiko-sdk 1.4.2-dev.a13aba0 → 1.4.3-dev.09dcbc3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -11,10 +11,10 @@
11
11
  "// This file is auto-generated by @hey-api/openapi-ts\n\nimport { getAuthToken } from '../core/auth.gen';\nimport type { QuerySerializerOptions } from '../core/bodySerializer.gen';\nimport { jsonBodySerializer } from '../core/bodySerializer.gen';\nimport {\n serializeArrayParam,\n serializeObjectParam,\n serializePrimitiveParam,\n} from '../core/pathSerializer.gen';\nimport { getUrl } from '../core/utils.gen';\nimport type { Client, ClientOptions, Config, RequestOptions } from './types.gen';\n\nexport const createQuerySerializer = <T = unknown>({\n parameters = {},\n ...args\n}: QuerySerializerOptions = {}) => {\n const querySerializer = (queryParams: T) => {\n const search: string[] = [];\n if (queryParams && typeof queryParams === 'object') {\n for (const name in queryParams) {\n const value = queryParams[name];\n\n if (value === undefined || value === null) {\n continue;\n }\n\n const options = parameters[name] || args;\n\n if (Array.isArray(value)) {\n const serializedArray = serializeArrayParam({\n allowReserved: options.allowReserved,\n explode: true,\n name,\n style: 'form',\n value,\n ...options.array,\n });\n if (serializedArray) search.push(serializedArray);\n } else if (typeof value === 'object') {\n const serializedObject = serializeObjectParam({\n allowReserved: options.allowReserved,\n explode: true,\n name,\n style: 'deepObject',\n value: value as Record<string, unknown>,\n ...options.object,\n });\n if (serializedObject) search.push(serializedObject);\n } else {\n const serializedPrimitive = serializePrimitiveParam({\n allowReserved: options.allowReserved,\n name,\n value: value as string,\n });\n if (serializedPrimitive) search.push(serializedPrimitive);\n }\n }\n }\n return search.join('&');\n };\n return querySerializer;\n};\n\n/**\n * Infers parseAs value from provided Content-Type header.\n */\nexport const getParseAs = (\n contentType: string | null,\n): Exclude<Config['parseAs'], 'auto'> => {\n if (!contentType) {\n // If no Content-Type header is provided, the best we can do is return the raw response body,\n // which is effectively the same as the 'stream' option.\n return 'stream';\n }\n\n const cleanContent = contentType.split(';')[0]?.trim();\n\n if (!cleanContent) {\n return;\n }\n\n if (\n cleanContent.startsWith('application/json') ||\n cleanContent.endsWith('+json')\n ) {\n return 'json';\n }\n\n if (cleanContent === 'multipart/form-data') {\n return 'formData';\n }\n\n if (\n ['application/', 'audio/', 'image/', 'video/'].some((type) =>\n cleanContent.startsWith(type),\n )\n ) {\n return 'blob';\n }\n\n if (cleanContent.startsWith('text/')) {\n return 'text';\n }\n\n return;\n};\n\nconst checkForExistence = (\n options: Pick<RequestOptions, 'auth' | 'query'> & {\n headers: Headers;\n },\n name?: string,\n): boolean => {\n if (!name) {\n return false;\n }\n if (\n options.headers.has(name) ||\n options.query?.[name] ||\n options.headers.get('Cookie')?.includes(`${name}=`)\n ) {\n return true;\n }\n return false;\n};\n\nexport const setAuthParams = async ({\n security,\n ...options\n}: Pick<Required<RequestOptions>, 'security'> &\n Pick<RequestOptions, 'auth' | 'query'> & {\n headers: Headers;\n }) => {\n for (const auth of security) {\n if (checkForExistence(options, auth.name)) {\n continue;\n }\n\n const token = await getAuthToken(auth, options.auth);\n\n if (!token) {\n continue;\n }\n\n const name = auth.name ?? 'Authorization';\n\n switch (auth.in) {\n case 'query':\n if (!options.query) {\n options.query = {};\n }\n options.query[name] = token;\n break;\n case 'cookie':\n options.headers.append('Cookie', `${name}=${token}`);\n break;\n case 'header':\n default:\n options.headers.set(name, token);\n break;\n }\n }\n};\n\nexport const buildUrl: Client['buildUrl'] = (options) =>\n getUrl({\n baseUrl: options.baseUrl as string,\n path: options.path,\n query: options.query,\n querySerializer:\n typeof options.querySerializer === 'function'\n ? options.querySerializer\n : createQuerySerializer(options.querySerializer),\n url: options.url,\n });\n\nexport const mergeConfigs = (a: Config, b: Config): Config => {\n const config = { ...a, ...b };\n if (config.baseUrl?.endsWith('/')) {\n config.baseUrl = config.baseUrl.substring(0, config.baseUrl.length - 1);\n }\n config.headers = mergeHeaders(a.headers, b.headers);\n return config;\n};\n\nconst headersEntries = (headers: Headers): Array<[string, string]> => {\n const entries: Array<[string, string]> = [];\n headers.forEach((value, key) => {\n entries.push([key, value]);\n });\n return entries;\n};\n\nexport const mergeHeaders = (\n ...headers: Array<Required<Config>['headers'] | undefined>\n): Headers => {\n const mergedHeaders = new Headers();\n for (const header of headers) {\n if (!header) {\n continue;\n }\n\n const iterator =\n header instanceof Headers\n ? headersEntries(header)\n : Object.entries(header);\n\n for (const [key, value] of iterator) {\n if (value === null) {\n mergedHeaders.delete(key);\n } else if (Array.isArray(value)) {\n for (const v of value) {\n mergedHeaders.append(key, v as string);\n }\n } else if (value !== undefined) {\n // assume object headers are meant to be JSON stringified, i.e. their\n // content value in OpenAPI specification is 'application/json'\n mergedHeaders.set(\n key,\n typeof value === 'object' ? JSON.stringify(value) : (value as string),\n );\n }\n }\n }\n return mergedHeaders;\n};\n\ntype ErrInterceptor<Err, Res, Req, Options> = (\n error: Err,\n response: Res,\n request: Req,\n options: Options,\n) => Err | Promise<Err>;\n\ntype ReqInterceptor<Req, Options> = (\n request: Req,\n options: Options,\n) => Req | Promise<Req>;\n\ntype ResInterceptor<Res, Req, Options> = (\n response: Res,\n request: Req,\n options: Options,\n) => Res | Promise<Res>;\n\nclass Interceptors<Interceptor> {\n fns: Array<Interceptor | null> = [];\n\n clear(): void {\n this.fns = [];\n }\n\n eject(id: number | Interceptor): void {\n const index = this.getInterceptorIndex(id);\n if (this.fns[index]) {\n this.fns[index] = null;\n }\n }\n\n exists(id: number | Interceptor): boolean {\n const index = this.getInterceptorIndex(id);\n return Boolean(this.fns[index]);\n }\n\n getInterceptorIndex(id: number | Interceptor): number {\n if (typeof id === 'number') {\n return this.fns[id] ? id : -1;\n }\n return this.fns.indexOf(id);\n }\n\n update(\n id: number | Interceptor,\n fn: Interceptor,\n ): number | Interceptor | false {\n const index = this.getInterceptorIndex(id);\n if (this.fns[index]) {\n this.fns[index] = fn;\n return id;\n }\n return false;\n }\n\n use(fn: Interceptor): number {\n this.fns.push(fn);\n return this.fns.length - 1;\n }\n}\n\nexport interface Middleware<Req, Res, Err, Options> {\n error: Interceptors<ErrInterceptor<Err, Res, Req, Options>>;\n request: Interceptors<ReqInterceptor<Req, Options>>;\n response: Interceptors<ResInterceptor<Res, Req, Options>>;\n}\n\nexport const createInterceptors = <Req, Res, Err, Options>(): Middleware<\n Req,\n Res,\n Err,\n Options\n> => ({\n error: new Interceptors<ErrInterceptor<Err, Res, Req, Options>>(),\n request: new Interceptors<ReqInterceptor<Req, Options>>(),\n response: new Interceptors<ResInterceptor<Res, Req, Options>>(),\n});\n\nconst defaultQuerySerializer = createQuerySerializer({\n allowReserved: false,\n array: {\n explode: true,\n style: 'form',\n },\n object: {\n explode: true,\n style: 'deepObject',\n },\n});\n\nconst defaultHeaders = {\n 'Content-Type': 'application/json',\n};\n\nexport const createConfig = <T extends ClientOptions = ClientOptions>(\n override: Config<Omit<ClientOptions, keyof T> & T> = {},\n): Config<Omit<ClientOptions, keyof T> & T> => ({\n ...jsonBodySerializer,\n headers: defaultHeaders,\n parseAs: 'auto',\n querySerializer: defaultQuerySerializer,\n ...override,\n});\n",
12
12
  "// This file is auto-generated by @hey-api/openapi-ts\n\nimport { createSseClient } from '../core/serverSentEvents.gen';\nimport type { HttpMethod } from '../core/types.gen';\nimport { getValidRequestBody } from '../core/utils.gen';\nimport type {\n Client,\n Config,\n RequestOptions,\n ResolvedRequestOptions,\n} from './types.gen';\nimport {\n buildUrl,\n createConfig,\n createInterceptors,\n getParseAs,\n mergeConfigs,\n mergeHeaders,\n setAuthParams,\n} from './utils.gen';\n\ntype ReqInit = Omit<RequestInit, 'body' | 'headers'> & {\n body?: any;\n headers: ReturnType<typeof mergeHeaders>;\n};\n\nexport const createClient = (config: Config = {}): Client => {\n let _config = mergeConfigs(createConfig(), config);\n\n const getConfig = (): Config => ({ ..._config });\n\n const setConfig = (config: Config): Config => {\n _config = mergeConfigs(_config, config);\n return getConfig();\n };\n\n const interceptors = createInterceptors<\n Request,\n Response,\n unknown,\n ResolvedRequestOptions\n >();\n\n const beforeRequest = async (options: RequestOptions) => {\n const opts = {\n ..._config,\n ...options,\n fetch: options.fetch ?? _config.fetch ?? globalThis.fetch,\n headers: mergeHeaders(_config.headers, options.headers),\n serializedBody: undefined,\n };\n\n if (opts.security) {\n await setAuthParams({\n ...opts,\n security: opts.security,\n });\n }\n\n if (opts.requestValidator) {\n await opts.requestValidator(opts);\n }\n\n if (opts.body !== undefined && opts.bodySerializer) {\n opts.serializedBody = opts.bodySerializer(opts.body);\n }\n\n // remove Content-Type header if body is empty to avoid sending invalid requests\n if (opts.body === undefined || opts.serializedBody === '') {\n opts.headers.delete('Content-Type');\n }\n\n const url = buildUrl(opts);\n\n return { opts, url };\n };\n\n const request: Client['request'] = async (options) => {\n // @ts-expect-error\n const { opts, url } = await beforeRequest(options);\n const requestInit: ReqInit = {\n redirect: 'follow',\n ...opts,\n body: getValidRequestBody(opts),\n };\n\n let request = new Request(url, requestInit);\n\n for (const fn of interceptors.request.fns) {\n if (fn) {\n request = await fn(request, opts);\n }\n }\n\n // fetch must be assigned here, otherwise it would throw the error:\n // TypeError: Failed to execute 'fetch' on 'Window': Illegal invocation\n const _fetch = opts.fetch!;\n let response: Response;\n\n try {\n response = await _fetch(request);\n } catch (error) {\n // Handle fetch exceptions (AbortError, network errors, etc.)\n let finalError = error;\n\n for (const fn of interceptors.error.fns) {\n if (fn) {\n finalError = (await fn(\n error,\n undefined as any,\n request,\n opts,\n )) as unknown;\n }\n }\n\n finalError = finalError || ({} as unknown);\n\n if (opts.throwOnError) {\n throw finalError;\n }\n\n // Return error response\n return opts.responseStyle === 'data'\n ? undefined\n : {\n error: finalError,\n request,\n response: undefined as any,\n };\n }\n\n for (const fn of interceptors.response.fns) {\n if (fn) {\n response = await fn(response, request, opts);\n }\n }\n\n const result = {\n request,\n response,\n };\n\n if (response.ok) {\n const parseAs =\n (opts.parseAs === 'auto'\n ? getParseAs(response.headers.get('Content-Type'))\n : opts.parseAs) ?? 'json';\n\n if (\n response.status === 204 ||\n response.headers.get('Content-Length') === '0'\n ) {\n let emptyData: any;\n switch (parseAs) {\n case 'arrayBuffer':\n case 'blob':\n case 'text':\n emptyData = await response[parseAs]();\n break;\n case 'formData':\n emptyData = new FormData();\n break;\n case 'stream':\n emptyData = response.body;\n break;\n case 'json':\n default:\n emptyData = {};\n break;\n }\n return opts.responseStyle === 'data'\n ? emptyData\n : {\n data: emptyData,\n ...result,\n };\n }\n\n let data: any;\n switch (parseAs) {\n case 'arrayBuffer':\n case 'blob':\n case 'formData':\n case 'text':\n data = await response[parseAs]();\n break;\n case 'json': {\n // Some servers return 200 with no Content-Length and empty body.\n // response.json() would throw; read as text and parse if non-empty.\n const text = await response.text();\n data = text ? JSON.parse(text) : {};\n break;\n }\n case 'stream':\n return opts.responseStyle === 'data'\n ? response.body\n : {\n data: response.body,\n ...result,\n };\n }\n\n if (parseAs === 'json') {\n if (opts.responseValidator) {\n await opts.responseValidator(data);\n }\n\n if (opts.responseTransformer) {\n data = await opts.responseTransformer(data);\n }\n }\n\n return opts.responseStyle === 'data'\n ? data\n : {\n data,\n ...result,\n };\n }\n\n const textError = await response.text();\n let jsonError: unknown;\n\n try {\n jsonError = JSON.parse(textError);\n } catch {\n // noop\n }\n\n const error = jsonError ?? textError;\n let finalError = error;\n\n for (const fn of interceptors.error.fns) {\n if (fn) {\n finalError = (await fn(error, response, request, opts)) as string;\n }\n }\n\n finalError = finalError || ({} as string);\n\n if (opts.throwOnError) {\n throw finalError;\n }\n\n // TODO: we probably want to return error and improve types\n return opts.responseStyle === 'data'\n ? undefined\n : {\n error: finalError,\n ...result,\n };\n };\n\n const makeMethodFn =\n (method: Uppercase<HttpMethod>) => (options: RequestOptions) =>\n request({ ...options, method });\n\n const makeSseFn =\n (method: Uppercase<HttpMethod>) => async (options: RequestOptions) => {\n const { opts, url } = await beforeRequest(options);\n return createSseClient({\n ...opts,\n body: opts.body as BodyInit | null | undefined,\n headers: opts.headers as unknown as Record<string, string>,\n method,\n onRequest: async (url, init) => {\n let request = new Request(url, init);\n for (const fn of interceptors.request.fns) {\n if (fn) {\n request = await fn(request, opts);\n }\n }\n return request;\n },\n serializedBody: getValidRequestBody(opts) as\n | BodyInit\n | null\n | undefined,\n url,\n });\n };\n\n return {\n buildUrl,\n connect: makeMethodFn('CONNECT'),\n delete: makeMethodFn('DELETE'),\n get: makeMethodFn('GET'),\n getConfig,\n head: makeMethodFn('HEAD'),\n interceptors,\n options: makeMethodFn('OPTIONS'),\n patch: makeMethodFn('PATCH'),\n post: makeMethodFn('POST'),\n put: makeMethodFn('PUT'),\n request,\n setConfig,\n sse: {\n connect: makeSseFn('CONNECT'),\n delete: makeSseFn('DELETE'),\n get: makeSseFn('GET'),\n head: makeSseFn('HEAD'),\n options: makeSseFn('OPTIONS'),\n patch: makeSseFn('PATCH'),\n post: makeSseFn('POST'),\n put: makeSseFn('PUT'),\n trace: makeSseFn('TRACE'),\n },\n trace: makeMethodFn('TRACE'),\n } as Client;\n};\n",
13
13
  "// This file is auto-generated by @hey-api/openapi-ts\n\nimport { type ClientOptions, type Config, createClient, createConfig } from './client';\nimport type { ClientOptions as ClientOptions2 } from './types.gen';\n\n/**\n * The `createClientConfig()` function will be called on client initialization\n * and the returned object will become the client's initial configuration.\n *\n * You may want to initialize your client this way instead of calling\n * `setConfig()`. This is useful for example if you're using Next.js\n * to ensure your client always has the correct values.\n */\nexport type CreateClientConfig<T extends ClientOptions = ClientOptions2> = (override?: Config<ClientOptions & T>) => Config<Required<ClientOptions> & T>;\n\nexport const client = createClient(createConfig<ClientOptions2>({ baseUrl: 'http://localhost:5000' }));\n",
14
- "// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { Client, Options as Options2, TDataShape } from './client';\nimport { client } from './client.gen';\nimport type { AddMediaToSeriesData, AddMediaToSeriesErrors, AddMediaToSeriesResponses, AddSegmentToCollectionData, AddSegmentToCollectionErrors, AddSegmentToCollectionResponses, CreateAdminReviewAllowlistEntryData, CreateAdminReviewAllowlistEntryErrors, CreateAdminReviewAllowlistEntryResponses, CreateCollectionData, CreateCollectionErrors, CreateCollectionResponses, CreateEpisodeData, CreateEpisodeErrors, CreateEpisodeResponses, CreateMediaData, CreateMediaErrors, CreateMediaResponses, CreateReportData, CreateReportErrors, CreateReportResponses, CreateSegmentData, CreateSegmentErrors, CreateSegmentResponses, CreateSeriesData, CreateSeriesErrors, CreateSeriesResponses, DeleteActivityData, DeleteActivityErrors, DeleteActivityResponses, DeleteAdminReviewAllowlistEntryData, DeleteAdminReviewAllowlistEntryErrors, DeleteAdminReviewAllowlistEntryResponses, DeleteCollectionData, DeleteCollectionErrors, DeleteCollectionResponses, DeleteEpisodeData, DeleteEpisodeErrors, DeleteEpisodeResponses, DeleteMediaData, DeleteMediaErrors, DeleteMediaResponses, DeleteSegmentData, DeleteSegmentErrors, DeleteSegmentResponses, DeleteSeriesData, DeleteSeriesErrors, DeleteSeriesResponses, ExportDataData, ExportDataErrors, ExportDataResponses, GetActivityHeatmapData, GetActivityHeatmapErrors, GetActivityHeatmapResponses, GetActivityStatsData, GetActivityStatsErrors, GetActivityStatsResponses, GetAdminDashboardData, GetAdminDashboardErrors, GetAdminDashboardResponses, GetAdminHealthData, GetAdminHealthErrors, GetAdminHealthResponses, GetAdminQueueData, GetAdminQueueErrors, GetAdminQueueResponses, GetAdminReviewRunData, GetAdminReviewRunErrors, GetAdminReviewRunResponses, GetCharacterData, GetCharacterErrors, GetCharacterResponses, GetCollectionData, GetCollectionErrors, GetCollectionResponses, GetEpisodeData, GetEpisodeErrors, GetEpisodeResponses, GetMediaData, GetMediaErrors, GetMediaResponses, GetPreferencesData, GetPreferencesErrors, GetPreferencesResponses, GetQuotaData, GetQuotaErrors, GetQuotaResponses, GetSearchStatsData, GetSearchStatsErrors, GetSearchStatsResponses, GetSegmentByUuidData, GetSegmentByUuidErrors, GetSegmentByUuidResponses, GetSegmentContextData, GetSegmentContextErrors, GetSegmentContextResponses, GetSegmentData, GetSegmentErrors, GetSegmentResponses, GetSeiyuuData, GetSeiyuuErrors, GetSeiyuuResponses, GetSeriesData, GetSeriesErrors, GetSeriesResponses, ListActivityData, ListActivityErrors, ListActivityResponses, ListAdminQueueFailedData, ListAdminQueueFailedErrors, ListAdminQueueFailedResponses, ListAdminQueueStatsData, ListAdminQueueStatsErrors, ListAdminQueueStatsResponses, ListAdminReportsData, ListAdminReportsErrors, ListAdminReportsResponses, ListAdminReviewAllowlistData, ListAdminReviewAllowlistErrors, ListAdminReviewAllowlistResponses, ListAdminReviewChecksData, ListAdminReviewChecksErrors, ListAdminReviewChecksResponses, ListAdminReviewRunsData, ListAdminReviewRunsErrors, ListAdminReviewRunsResponses, ListCollectionsData, ListCollectionsErrors, ListCollectionsResponses, ListEpisodesData, ListEpisodesErrors, ListEpisodesResponses, ListLabsData, ListLabsErrors, ListLabsResponses, ListMediaData, ListMediaErrors, ListMediaResponses, ListReportsData, ListReportsErrors, ListReportsResponses, ListSegmentsData, ListSegmentsErrors, ListSegmentsResponses, ListSeriesData, ListSeriesErrors, ListSeriesResponses, PurgeAdminQueueFailedData, PurgeAdminQueueFailedErrors, PurgeAdminQueueFailedResponses, RemoveMediaFromSeriesData, RemoveMediaFromSeriesErrors, RemoveMediaFromSeriesResponses, RemoveSegmentFromCollectionData, RemoveSegmentFromCollectionErrors, RemoveSegmentFromCollectionResponses, RetryAdminQueueFailedData, RetryAdminQueueFailedErrors, RetryAdminQueueFailedResponses, RunAdminReviewData, RunAdminReviewErrors, RunAdminReviewResponses, SearchData, SearchErrors, SearchResponses, SearchWordsData, SearchWordsErrors, SearchWordsResponses, TriggerReindexData, TriggerReindexErrors, TriggerReindexResponses, UpdateAdminReportData, UpdateAdminReportErrors, UpdateAdminReportResponses, UpdateAdminReviewCheckData, UpdateAdminReviewCheckErrors, UpdateAdminReviewCheckResponses, UpdateCollectionData, UpdateCollectionErrors, UpdateCollectionResponses, UpdateCollectionSegmentData, UpdateCollectionSegmentErrors, UpdateCollectionSegmentResponses, UpdateEpisodeData, UpdateEpisodeErrors, UpdateEpisodeResponses, UpdateMediaData, UpdateMediaErrors, UpdateMediaResponses, UpdatePreferencesData, UpdatePreferencesErrors, UpdatePreferencesResponses, UpdateSegmentData, UpdateSegmentErrors, UpdateSegmentResponses, UpdateSeriesData, UpdateSeriesErrors, UpdateSeriesMediaData, UpdateSeriesMediaErrors, UpdateSeriesMediaResponses, UpdateSeriesResponses } from './types.gen';\n\nexport type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {\n /**\n * You can provide a client instance returned by `createClient()` instead of\n * individual options. This might be also useful if you want to implement a\n * custom client.\n */\n client?: Client;\n /**\n * You can pass arbitrary values through the `meta` object. This can be\n * used to access values that aren't defined as part of the SDK function.\n */\n meta?: Record<string, unknown>;\n};\n\n/**\n * Search segments by query\n *\n * The primary search endpoint for finding Japanese segments and their translations across indexed media (anime, J-Drama, audiobooks).\n *\n * This endpoint uses Elasticsearch with advanced Japanese text analysis supporting multiple input types (romaji, kanji, kana) and providing intelligent field-based boosting.\n *\n * **Query Features**\n * - **Multi-language Support:** Search using Japanese (kanji/kana), Romaji, or English/Spanish\n * - **Boolean Operators:** `AND`, `OR`, `NOT` supported (e.g., `(cat OR dog) AND bird`)\n * - **Phrase Matching:** Use quotes for exact phrases (e.g., `\"good morning\"`), or pass `exact_match: true` to the request body\n * - **Wildcards:** `te*t` format (leading wildcards not supported)\n * - **Smart Field Selection:** Automatically chooses optimal search fields based on input type\n *\n * **Input Type Handling**\n * | Input Type | Search Strategy |\n * |------------|-----------------|\n * | **Romaji** (`go`, `taberu`) | Boosts EN/ES translations, reading form (pronunciation), and base form |\n * | **Kanji** (`食べる`, `彼女`) | Searches content and base form (dictionary form). Ignores matches by reading (homophones). |\n * | **Kana** (`たべる`, `かのじょ`) | Standard search across content, base form, and reading form |\n * | **English/Spanish** | Direct translation search |\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const search = <ThrowOnError extends boolean = false>(options?: Options<SearchData, ThrowOnError>) => (options?.client ?? client).post<SearchResponses, SearchErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/search',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers\n }\n});\n\n/**\n * Get search statistics\n *\n * Returns statistics for search filters and category tabs without fetching segment rows.\n *\n * This endpoint is optimized for UI filter panels:\n * - `media` powers the media dropdown on the right side.\n * - `categories` powers category tabs below the search bar.\n *\n * The stats are scoped by query and category filters, but are not narrowed by a selected media/episode.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSearchStats = <ThrowOnError extends boolean = false>(options?: Options<GetSearchStatsData, ThrowOnError>) => (options?.client ?? client).post<GetSearchStatsResponses, GetSearchStatsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/search/stats',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers\n }\n});\n\n/**\n * Search by multiple words\n *\n * Searches for multiple words simultaneously and aggregates results by media.\n *\n * Unlike the main search endpoint, this returns a summary of matches per media rather than individual segments.\n *\n * **Use Cases**\n * - Vocabulary discovery across media library\n * - Finding anime/dramas that use specific words\n * - Comparing word usage across different titles\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const searchWords = <ThrowOnError extends boolean = false>(options: Options<SearchWordsData, ThrowOnError>) => (options.client ?? client).post<SearchWordsResponses, SearchWordsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/search/words',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List all media\n *\n * Returns a paginated list of media with full metadata, including cover/banner images, episode counts, and genres.\n * Supports filtering by category and text search.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const listMedia = <ThrowOnError extends boolean = false>(options?: Options<ListMediaData, ThrowOnError>) => (options?.client ?? client).get<ListMediaResponses, ListMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media',\n ...options\n});\n\n/**\n * Create new media\n *\n * Creates a new media entry in the database.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const createMedia = <ThrowOnError extends boolean = false>(options: Options<CreateMediaData, ThrowOnError>) => (options.client ?? client).post<CreateMediaResponses, CreateMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete media (soft delete)\n *\n * Soft-deletes a media entry by setting the `deletedAt` timestamp. The media remains in the database but is excluded from query results.\n *\n * **Permissions:** `REMOVE_MEDIA`\n *\n */\nexport const deleteMedia = <ThrowOnError extends boolean = false>(options: Options<DeleteMediaData, ThrowOnError>) => (options.client ?? client).delete<DeleteMediaResponses, DeleteMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{id}',\n ...options\n});\n\n/**\n * Get single media\n *\n * Returns a single media entry by its ID with full metadata.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getMedia = <ThrowOnError extends boolean = false>(options: Options<GetMediaData, ThrowOnError>) => (options.client ?? client).get<GetMediaResponses, GetMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{id}',\n ...options\n});\n\n/**\n * Update media\n *\n * Updates an existing media entry. Only provided fields will be updated.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const updateMedia = <ThrowOnError extends boolean = false>(options: Options<UpdateMediaData, ThrowOnError>) => (options.client ?? client).patch<UpdateMediaResponses, UpdateMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List episodes for a media\n *\n * Returns a paginated list of episodes for a specific media.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const listEpisodes = <ThrowOnError extends boolean = false>(options: Options<ListEpisodesData, ThrowOnError>) => (options.client ?? client).get<ListEpisodesResponses, ListEpisodesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes',\n ...options\n});\n\n/**\n * Create new episode\n *\n * Creates a new episode for a specific media.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const createEpisode = <ThrowOnError extends boolean = false>(options: Options<CreateEpisodeData, ThrowOnError>) => (options.client ?? client).post<CreateEpisodeResponses, CreateEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete an episode\n *\n * Soft-deletes an episode. Segments are not cascade deleted — this only hides the episode from results.\n *\n * **Permissions:** `REMOVE_MEDIA`\n *\n */\nexport const deleteEpisode = <ThrowOnError extends boolean = false>(options: Options<DeleteEpisodeData, ThrowOnError>) => (options.client ?? client).delete<DeleteEpisodeResponses, DeleteEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}',\n ...options\n});\n\n/**\n * Get single episode\n *\n * Returns a specific episode by media ID and episode number.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getEpisode = <ThrowOnError extends boolean = false>(options: Options<GetEpisodeData, ThrowOnError>) => (options.client ?? client).get<GetEpisodeResponses, GetEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}',\n ...options\n});\n\n/**\n * Update episode\n *\n * Updates an existing episode. Only provided fields will be updated.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const updateEpisode = <ThrowOnError extends boolean = false>(options: Options<UpdateEpisodeData, ThrowOnError>) => (options.client ?? client).patch<UpdateEpisodeResponses, UpdateEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List segments for an episode\n *\n * Returns a paginated list of segments for a specific episode.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const listSegments = <ThrowOnError extends boolean = false>(options: Options<ListSegmentsData, ThrowOnError>) => (options.client ?? client).get<ListSegmentsResponses, ListSegmentsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments',\n ...options\n});\n\n/**\n * Create new segment\n *\n * Creates a new segment for a specific episode.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const createSegment = <ThrowOnError extends boolean = false>(options: Options<CreateSegmentData, ThrowOnError>) => (options.client ?? client).post<CreateSegmentResponses, CreateSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete segment\n *\n * Soft-deletes a segment by setting its status to DELETED.\n *\n * **Permissions:** `REMOVE_MEDIA`\n *\n */\nexport const deleteSegment = <ThrowOnError extends boolean = false>(options: Options<DeleteSegmentData, ThrowOnError>) => (options.client ?? client).delete<DeleteSegmentResponses, DeleteSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments/{id}',\n ...options\n});\n\n/**\n * Get single segment\n *\n * Returns a specific segment by its ID within the media/episode hierarchy.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSegment = <ThrowOnError extends boolean = false>(options: Options<GetSegmentData, ThrowOnError>) => (options.client ?? client).get<GetSegmentResponses, GetSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments/{id}',\n ...options\n});\n\n/**\n * Update segment\n *\n * Updates an existing segment. Only provided fields will be updated.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const updateSegment = <ThrowOnError extends boolean = false>(options: Options<UpdateSegmentData, ThrowOnError>) => (options.client ?? client).patch<UpdateSegmentResponses, UpdateSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get segment by UUID\n *\n * Returns a specific segment by its UUID. A shortcut alternative to the nested `/media/{mediaId}/episodes/{episodeNumber}/segments/{id}` path.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSegmentByUuid = <ThrowOnError extends boolean = false>(options: Options<GetSegmentByUuidData, ThrowOnError>) => (options.client ?? client).get<GetSegmentByUuidResponses, GetSegmentByUuidErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/segments/{uuid}',\n ...options\n});\n\n/**\n * Get surrounding context for a segment\n *\n * Retrieves segments surrounding a specific segment within an episode.\n * Returns segments both before and after the target, providing dialogue context for how a sentence is used.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSegmentContext = <ThrowOnError extends boolean = false>(options: Options<GetSegmentContextData, ThrowOnError>) => (options.client ?? client).get<GetSegmentContextResponses, GetSegmentContextErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/segments/{uuid}/context',\n ...options\n});\n\n/**\n * List all series\n *\n * Returns a paginated list of media series groupings.\n *\n */\nexport const listSeries = <ThrowOnError extends boolean = false>(options?: Options<ListSeriesData, ThrowOnError>) => (options?.client ?? client).get<ListSeriesResponses, ListSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/media/series',\n ...options\n});\n\n/**\n * Create series\n *\n * Creates a new media series grouping.\n *\n */\nexport const createSeries = <ThrowOnError extends boolean = false>(options: Options<CreateSeriesData, ThrowOnError>) => (options.client ?? client).post<CreateSeriesResponses, CreateSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete series\n *\n * Deletes a series and all its media associations.\n *\n */\nexport const deleteSeries = <ThrowOnError extends boolean = false>(options: Options<DeleteSeriesData, ThrowOnError>) => (options.client ?? client).delete<DeleteSeriesResponses, DeleteSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}',\n ...options\n});\n\n/**\n * Get series details\n *\n * Returns a series with all media entries sorted by position.\n *\n */\nexport const getSeries = <ThrowOnError extends boolean = false>(options: Options<GetSeriesData, ThrowOnError>) => (options.client ?? client).get<GetSeriesResponses, GetSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/media/series/{id}',\n ...options\n});\n\n/**\n * Update series metadata\n *\n * Updates series localized names.\n *\n */\nexport const updateSeries = <ThrowOnError extends boolean = false>(options: Options<UpdateSeriesData, ThrowOnError>) => (options.client ?? client).patch<UpdateSeriesResponses, UpdateSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Add media to series\n *\n * Adds a media entry to a series at a specific position.\n *\n */\nexport const addMediaToSeries = <ThrowOnError extends boolean = false>(options: Options<AddMediaToSeriesData, ThrowOnError>) => (options.client ?? client).post<AddMediaToSeriesResponses, AddMediaToSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}/media',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Remove media from series\n *\n * Removes a media entry from a series.\n *\n */\nexport const removeMediaFromSeries = <ThrowOnError extends boolean = false>(options: Options<RemoveMediaFromSeriesData, ThrowOnError>) => (options.client ?? client).delete<RemoveMediaFromSeriesResponses, RemoveMediaFromSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}/media/{mediaId}',\n ...options\n});\n\n/**\n * Update media position in series\n *\n * Updates the position of a media entry in a series.\n *\n */\nexport const updateSeriesMedia = <ThrowOnError extends boolean = false>(options: Options<UpdateSeriesMediaData, ThrowOnError>) => (options.client ?? client).patch<UpdateSeriesMediaResponses, UpdateSeriesMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}/media/{mediaId}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get character details\n *\n * Returns a character with their voice actors (seiyuu) and all media appearances.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getCharacter = <ThrowOnError extends boolean = false>(options: Options<GetCharacterData, ThrowOnError>) => (options.client ?? client).get<GetCharacterResponses, GetCharacterErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/characters/{id}',\n ...options\n});\n\n/**\n * Get seiyuu details\n *\n * Returns a voice actor (seiyuu) with all characters they voiced and their media appearances.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSeiyuu = <ThrowOnError extends boolean = false>(options: Options<GetSeiyuuData, ThrowOnError>) => (options.client ?? client).get<GetSeiyuuResponses, GetSeiyuuErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/seiyuu/{id}',\n ...options\n});\n\n/**\n * Get current monthly API quota\n *\n * Returns the API quota usage for the current billing period.\n * Accepts both session cookie and API key authentication.\n *\n * **Permissions:** Session authentication (cookie-based) or API key (`READ_MEDIA`).\n *\n */\nexport const getQuota = <ThrowOnError extends boolean = false>(options?: Options<GetQuotaData, ThrowOnError>) => (options?.client ?? client).get<GetQuotaResponses, GetQuotaErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }, { scheme: 'bearer', type: 'http' }],\n url: '/v1/user/quota',\n ...options\n});\n\n/**\n * List user's own reports\n *\n * Returns the authenticated user's submitted reports with cursor pagination.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const listReports = <ThrowOnError extends boolean = false>(options?: Options<ListReportsData, ThrowOnError>) => (options?.client ?? client).get<ListReportsResponses, ListReportsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/reports',\n ...options\n});\n\n/**\n * Create a new report\n *\n * Submit a report for a segment or media entry.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const createReport = <ThrowOnError extends boolean = false>(options: Options<CreateReportData, ThrowOnError>) => (options.client ?? client).post<CreateReportResponses, CreateReportErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/reports',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get user preferences\n *\n * Returns the authenticated user's full preferences object.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const getPreferences = <ThrowOnError extends boolean = false>(options?: Options<GetPreferencesData, ThrowOnError>) => (options?.client ?? client).get<GetPreferencesResponses, GetPreferencesErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/preferences',\n ...options\n});\n\n/**\n * Update user preferences\n *\n * Deep-merges a partial preferences update into the user's existing preferences.\n * Only the provided keys are updated; all other keys are preserved.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const updatePreferences = <ThrowOnError extends boolean = false>(options: Options<UpdatePreferencesData, ThrowOnError>) => (options.client ?? client).patch<UpdatePreferencesResponses, UpdatePreferencesErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/preferences',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Clear user activity history\n *\n * Deletes the authenticated user's activity history. Optionally filter by activity type.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const deleteActivity = <ThrowOnError extends boolean = false>(options?: Options<DeleteActivityData, ThrowOnError>) => (options?.client ?? client).delete<DeleteActivityResponses, DeleteActivityErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity',\n ...options\n});\n\n/**\n * Get user activity history\n *\n * Returns the authenticated user's activity history with cursor-based pagination.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const listActivity = <ThrowOnError extends boolean = false>(options?: Options<ListActivityData, ThrowOnError>) => (options?.client ?? client).get<ListActivityResponses, ListActivityErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity',\n ...options\n});\n\n/**\n * Get activity heatmap data\n *\n * Returns daily activity counts for the authenticated user, grouped by date.\n * Designed for rendering a GitHub-style contribution heatmap.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const getActivityHeatmap = <ThrowOnError extends boolean = false>(options?: Options<GetActivityHeatmapData, ThrowOnError>) => (options?.client ?? client).get<GetActivityHeatmapResponses, GetActivityHeatmapErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity/heatmap',\n ...options\n});\n\n/**\n * Get user activity statistics\n *\n * Returns aggregate statistics about the authenticated user's activity:\n * total searches, exports, plays, and study streak.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const getActivityStats = <ThrowOnError extends boolean = false>(options?: Options<GetActivityStatsData, ThrowOnError>) => (options?.client ?? client).get<GetActivityStatsResponses, GetActivityStatsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity/stats',\n ...options\n});\n\n/**\n * Export all user data\n *\n * Returns a full JSON export of all user-related data for GDPR data portability.\n * Includes profile, preferences, activity history, collections, and reports.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const exportData = <ThrowOnError extends boolean = false>(options?: Options<ExportDataData, ThrowOnError>) => (options?.client ?? client).get<ExportDataResponses, ExportDataErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/export',\n ...options\n});\n\n/**\n * List lab features with user opt-in status\n *\n * Returns all available lab features merged with the authenticated user's\n * opt-in status. Features gated by role are excluded if the user lacks\n * the required role.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const listLabs = <ThrowOnError extends boolean = false>(options?: Options<ListLabsData, ThrowOnError>) => (options?.client ?? client).get<ListLabsResponses, ListLabsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/labs',\n ...options\n});\n\n/**\n * List user's collections\n *\n * Returns all collections for the authenticated user. Can filter by visibility.\n *\n */\nexport const listCollections = <ThrowOnError extends boolean = false>(options?: Options<ListCollectionsData, ThrowOnError>) => (options?.client ?? client).get<ListCollectionsResponses, ListCollectionsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections',\n ...options\n});\n\n/**\n * Create collection\n *\n * Creates a new segment collection for the authenticated user.\n *\n */\nexport const createCollection = <ThrowOnError extends boolean = false>(options: Options<CreateCollectionData, ThrowOnError>) => (options.client ?? client).post<CreateCollectionResponses, CreateCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete collection\n *\n * Deletes a collection and all its segment entries. Requires collection ownership.\n *\n */\nexport const deleteCollection = <ThrowOnError extends boolean = false>(options: Options<DeleteCollectionData, ThrowOnError>) => (options.client ?? client).delete<DeleteCollectionResponses, DeleteCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}',\n ...options\n});\n\n/**\n * Get collection details\n *\n * Returns a collection with paginated segments and their search result data.\n *\n */\nexport const getCollection = <ThrowOnError extends boolean = false>(options: Options<GetCollectionData, ThrowOnError>) => (options.client ?? client).get<GetCollectionResponses, GetCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}',\n ...options\n});\n\n/**\n * Update collection metadata\n *\n * Updates collection name or visibility. Requires collection ownership.\n *\n */\nexport const updateCollection = <ThrowOnError extends boolean = false>(options: Options<UpdateCollectionData, ThrowOnError>) => (options.client ?? client).patch<UpdateCollectionResponses, UpdateCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Add segment to collection\n *\n * Adds a segment to a collection. Requires collection ownership.\n *\n */\nexport const addSegmentToCollection = <ThrowOnError extends boolean = false>(options: Options<AddSegmentToCollectionData, ThrowOnError>) => (options.client ?? client).post<AddSegmentToCollectionResponses, AddSegmentToCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}/segments',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Remove segment from collection\n *\n * Removes a segment from a collection. Requires collection ownership.\n *\n */\nexport const removeSegmentFromCollection = <ThrowOnError extends boolean = false>(options: Options<RemoveSegmentFromCollectionData, ThrowOnError>) => (options.client ?? client).delete<RemoveSegmentFromCollectionResponses, RemoveSegmentFromCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}/segments/{uuid}',\n ...options\n});\n\n/**\n * Update segment in collection\n *\n * Updates the note or position of a segment in a collection. Requires collection ownership.\n *\n */\nexport const updateCollectionSegment = <ThrowOnError extends boolean = false>(options: Options<UpdateCollectionSegmentData, ThrowOnError>) => (options.client ?? client).patch<UpdateCollectionSegmentResponses, UpdateCollectionSegmentErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}/segments/{uuid}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Admin dashboard statistics\n *\n * Returns at-a-glance statistics for the admin dashboard including media counts,\n * user counts, and system health information.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminDashboard = <ThrowOnError extends boolean = false>(options?: Options<GetAdminDashboardData, ThrowOnError>) => (options?.client ?? client).get<GetAdminDashboardResponses, GetAdminDashboardErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/dashboard',\n ...options\n});\n\n/**\n * System health check\n *\n * Returns connectivity status and version information for all backend subsystems\n * (Elasticsearch, PostgreSQL, application).\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminHealth = <ThrowOnError extends boolean = false>(options?: Options<GetAdminHealthData, ThrowOnError>) => (options?.client ?? client).get<GetAdminHealthResponses, GetAdminHealthErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/health',\n ...options\n});\n\n/**\n * Reindex database into Elasticsearch\n *\n * Reindexes segments from the PostgreSQL database into Elasticsearch.\n * Allows filtering by specific media IDs or episodes.\n *\n * **Behavior:**\n * - If no filters provided, reindexes all segments\n * - If `mediaIds` provided, reindexes all segments from those media\n * - If `episodes` provided, reindexes only the specified episodes\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const triggerReindex = <ThrowOnError extends boolean = false>(options?: Options<TriggerReindexData, ThrowOnError>) => (options?.client ?? client).post<TriggerReindexResponses, TriggerReindexErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/reindex',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers\n }\n});\n\n/**\n * Get queue statistics\n *\n * Returns statistics for all ES sync queues including pending and failed job counts.\n *\n * **Use cases:**\n * - Monitor queue health\n * - Detect stuck jobs\n * - Check backlog size\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminQueueStats = <ThrowOnError extends boolean = false>(options?: Options<ListAdminQueueStatsData, ThrowOnError>) => (options?.client ?? client).get<ListAdminQueueStatsResponses, ListAdminQueueStatsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/stats',\n ...options\n});\n\n/**\n * Get detailed queue information\n *\n * Returns live queue stats and queue metadata from PgBoss for a specific queue.\n *\n * **Queue names:**\n * - `es-sync-create` - Jobs to create new segments in Elasticsearch\n * - `es-sync-update` - Jobs to update existing segments\n * - `es-sync-delete` - Jobs to delete segments\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminQueue = <ThrowOnError extends boolean = false>(options: Options<GetAdminQueueData, ThrowOnError>) => (options.client ?? client).get<GetAdminQueueResponses, GetAdminQueueErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}',\n ...options\n});\n\n/**\n * Get failed jobs from a queue\n *\n * Returns jobs that have exceeded their retry limit and permanently failed.\n *\n * **Use cases:**\n * - Identify segments that failed to sync to Elasticsearch\n * - Debug persistent sync issues\n * - Decide whether to retry or purge failed jobs\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminQueueFailed = <ThrowOnError extends boolean = false>(options: Options<ListAdminQueueFailedData, ThrowOnError>) => (options.client ?? client).get<ListAdminQueueFailedResponses, ListAdminQueueFailedErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}/failed',\n ...options\n});\n\n/**\n * Retry failed jobs from a queue\n *\n * Re-enqueues all failed jobs from a specific queue for another attempt.\n *\n * **Use cases:**\n * - Retry jobs that failed due to temporary Elasticsearch issues\n * - Recover from network blips\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const retryAdminQueueFailed = <ThrowOnError extends boolean = false>(options: Options<RetryAdminQueueFailedData, ThrowOnError>) => (options.client ?? client).post<RetryAdminQueueFailedResponses, RetryAdminQueueFailedErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}/retry',\n ...options\n});\n\n/**\n * Purge failed jobs from a queue\n *\n * Permanently deletes all failed jobs from a queue.\n * This does **not** re-sync the affected segments — use the reindex endpoint for that.\n *\n * **Use cases:**\n * - Clean up old failed jobs after investigating\n * - Reset a queue after fixing the underlying issue\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const purgeAdminQueueFailed = <ThrowOnError extends boolean = false>(options: Options<PurgeAdminQueueFailedData, ThrowOnError>) => (options.client ?? client).delete<PurgeAdminQueueFailedResponses, PurgeAdminQueueFailedErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}/purge',\n ...options\n});\n\n/**\n * List all reports\n *\n * Returns all reports with filtering and cursor pagination.\n * Supports filtering by source (USER/AUTO) to separate user reports from auto-check findings.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReports = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReportsData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReportsResponses, ListAdminReportsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/reports',\n ...options\n});\n\n/**\n * Update a report\n *\n * Updates the status and/or admin notes of a report.\n * Works for both USER and AUTO reports.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const updateAdminReport = <ThrowOnError extends boolean = false>(options: Options<UpdateAdminReportData, ThrowOnError>) => (options.client ?? client).patch<UpdateAdminReportResponses, UpdateAdminReportErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/reports/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Run auto-checks\n *\n * Triggers all enabled auto-checks. Creates ReviewCheckRun records and AUTO reports for any findings.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const runAdminReview = <ThrowOnError extends boolean = false>(options?: Options<RunAdminReviewData, ThrowOnError>) => (options?.client ?? client).post<RunAdminReviewResponses, RunAdminReviewErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/run',\n ...options\n});\n\n/**\n * List all review checks\n *\n * Returns all check definitions with current config, threshold schema, and latest run info.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReviewChecks = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReviewChecksData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReviewChecksResponses, ListAdminReviewChecksErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/checks',\n ...options\n});\n\n/**\n * Update a review check config\n *\n * Updates the threshold values or enabled status of a check.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const updateAdminReviewCheck = <ThrowOnError extends boolean = false>(options: Options<UpdateAdminReviewCheckData, ThrowOnError>) => (options.client ?? client).patch<UpdateAdminReviewCheckResponses, UpdateAdminReviewCheckErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/checks/{name}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List past check runs\n *\n * Returns past review check runs with summary stats. Supports filtering by check name and cursor pagination.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReviewRuns = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReviewRunsData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReviewRunsResponses, ListAdminReviewRunsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/runs',\n ...options\n});\n\n/**\n * Get a specific run's details\n *\n * Returns a specific review check run record with its linked reports.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminReviewRun = <ThrowOnError extends boolean = false>(options: Options<GetAdminReviewRunData, ThrowOnError>) => (options.client ?? client).get<GetAdminReviewRunResponses, GetAdminReviewRunErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/runs/{id}',\n ...options\n});\n\n/**\n * List allowlisted items\n *\n * Returns all allowlisted items (media/episodes) that are excluded from auto-check runs.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReviewAllowlist = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReviewAllowlistData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReviewAllowlistResponses, ListAdminReviewAllowlistErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/allowlist',\n ...options\n});\n\n/**\n * Add to allowlist\n *\n * Adds a media or episode to the allowlist for a specific check, excluding it from future auto-check runs.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const createAdminReviewAllowlistEntry = <ThrowOnError extends boolean = false>(options: Options<CreateAdminReviewAllowlistEntryData, ThrowOnError>) => (options.client ?? client).post<CreateAdminReviewAllowlistEntryResponses, CreateAdminReviewAllowlistEntryErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/allowlist',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Remove from allowlist\n *\n * Removes an item from the review allowlist, re-enabling auto-checks for that media/episode.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const deleteAdminReviewAllowlistEntry = <ThrowOnError extends boolean = false>(options: Options<DeleteAdminReviewAllowlistEntryData, ThrowOnError>) => (options.client ?? client).delete<DeleteAdminReviewAllowlistEntryResponses, DeleteAdminReviewAllowlistEntryErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/allowlist/{id}',\n ...options\n});\n",
15
- "// This file is auto-generated by scripts/generate.ts\n\nimport { createClient as createApiClient, createConfig, type Client } from './client';\nimport type { ClientOptions } from './types.gen';\nimport { search, getSearchStats, searchWords, listMedia, getMedia, listEpisodes, getEpisode, getSegment, getSegmentByUuid, getSegmentContext, listSeries, getSeries, getCharacter, getSeiyuu, getQuota, listCollections, createCollection, getCollection, updateCollection, deleteCollection, addSegmentToCollection, updateCollectionSegment, removeSegmentFromCollection, triggerReindex, listAdminQueueStats, getAdminQueue, listAdminQueueFailed, retryAdminQueueFailed, purgeAdminQueueFailed, listAdminReports, updateAdminReport, runAdminReview, listAdminReviewChecks, updateAdminReviewCheck, listAdminReviewRuns, getAdminReviewRun, listAdminReviewAllowlist, createAdminReviewAllowlistEntry, deleteAdminReviewAllowlistEntry, createMedia, updateMedia, deleteMedia, createEpisode, updateEpisode, deleteEpisode, listSegments, createSegment, updateSegment, deleteSegment, createSeries, updateSeries, deleteSeries, addMediaToSeries, updateSeriesMedia, removeMediaFromSeries, createReport, listReports, getPreferences, updatePreferences, listActivity, deleteActivity, getActivityHeatmap, getActivityStats, exportData, listLabs, getAdminDashboard, getAdminHealth } from './sdk.gen';\n\nexport interface NadeshikoConfig {\n apiKey: string;\n baseUrl?: 'LOCAL' | 'DEVELOPMENT' | 'PRODUCTION' | string;\n}\n\nconst environments = {\n LOCAL: 'http://localhost:5000/api',\n DEVELOPMENT: 'https://api.dev.brigadasos.xyz/api',\n PRODUCTION: 'https://api.brigadasos.xyz/api',\n} as const;\n\nexport type NadeshikoClient = {\n client: Client;\n search: typeof search;\n getSearchStats: typeof getSearchStats;\n searchWords: typeof searchWords;\n listMedia: typeof listMedia;\n getMedia: typeof getMedia;\n listEpisodes: typeof listEpisodes;\n getEpisode: typeof getEpisode;\n getSegment: typeof getSegment;\n getSegmentByUuid: typeof getSegmentByUuid;\n getSegmentContext: typeof getSegmentContext;\n listSeries: typeof listSeries;\n getSeries: typeof getSeries;\n getCharacter: typeof getCharacter;\n getSeiyuu: typeof getSeiyuu;\n getQuota: typeof getQuota;\n listCollections: typeof listCollections;\n createCollection: typeof createCollection;\n getCollection: typeof getCollection;\n updateCollection: typeof updateCollection;\n deleteCollection: typeof deleteCollection;\n addSegmentToCollection: typeof addSegmentToCollection;\n updateCollectionSegment: typeof updateCollectionSegment;\n removeSegmentFromCollection: typeof removeSegmentFromCollection;\n triggerReindex: typeof triggerReindex;\n listAdminQueueStats: typeof listAdminQueueStats;\n getAdminQueue: typeof getAdminQueue;\n listAdminQueueFailed: typeof listAdminQueueFailed;\n retryAdminQueueFailed: typeof retryAdminQueueFailed;\n purgeAdminQueueFailed: typeof purgeAdminQueueFailed;\n listAdminReports: typeof listAdminReports;\n updateAdminReport: typeof updateAdminReport;\n runAdminReview: typeof runAdminReview;\n listAdminReviewChecks: typeof listAdminReviewChecks;\n updateAdminReviewCheck: typeof updateAdminReviewCheck;\n listAdminReviewRuns: typeof listAdminReviewRuns;\n getAdminReviewRun: typeof getAdminReviewRun;\n listAdminReviewAllowlist: typeof listAdminReviewAllowlist;\n createAdminReviewAllowlistEntry: typeof createAdminReviewAllowlistEntry;\n deleteAdminReviewAllowlistEntry: typeof deleteAdminReviewAllowlistEntry;\n createMedia: typeof createMedia;\n updateMedia: typeof updateMedia;\n deleteMedia: typeof deleteMedia;\n createEpisode: typeof createEpisode;\n updateEpisode: typeof updateEpisode;\n deleteEpisode: typeof deleteEpisode;\n listSegments: typeof listSegments;\n createSegment: typeof createSegment;\n updateSegment: typeof updateSegment;\n deleteSegment: typeof deleteSegment;\n createSeries: typeof createSeries;\n updateSeries: typeof updateSeries;\n deleteSeries: typeof deleteSeries;\n addMediaToSeries: typeof addMediaToSeries;\n updateSeriesMedia: typeof updateSeriesMedia;\n removeMediaFromSeries: typeof removeMediaFromSeries;\n createReport: typeof createReport;\n listReports: typeof listReports;\n getPreferences: typeof getPreferences;\n updatePreferences: typeof updatePreferences;\n listActivity: typeof listActivity;\n deleteActivity: typeof deleteActivity;\n getActivityHeatmap: typeof getActivityHeatmap;\n getActivityStats: typeof getActivityStats;\n exportData: typeof exportData;\n listLabs: typeof listLabs;\n getAdminDashboard: typeof getAdminDashboard;\n getAdminHealth: typeof getAdminHealth;\n };\n\nexport function createNadeshikoClient(config: NadeshikoConfig): NadeshikoClient {\n const baseUrl = config.baseUrl\n ? (config.baseUrl in environments\n ? environments[config.baseUrl as keyof typeof environments]\n : config.baseUrl)\n : environments.PRODUCTION;\n\n const clientInstance = createApiClient(createConfig<ClientOptions>({\n baseUrl,\n headers: { Authorization: `Bearer ${config.apiKey}` },\n }));\n\n return {\n client: clientInstance,\n search: (options?: any) => search({ ...options, client: clientInstance }),\n getSearchStats: (options?: any) => getSearchStats({ ...options, client: clientInstance }),\n searchWords: (options?: any) => searchWords({ ...options, client: clientInstance }),\n listMedia: (options?: any) => listMedia({ ...options, client: clientInstance }),\n getMedia: (options?: any) => getMedia({ ...options, client: clientInstance }),\n listEpisodes: (options?: any) => listEpisodes({ ...options, client: clientInstance }),\n getEpisode: (options?: any) => getEpisode({ ...options, client: clientInstance }),\n getSegment: (options?: any) => getSegment({ ...options, client: clientInstance }),\n getSegmentByUuid: (options?: any) => getSegmentByUuid({ ...options, client: clientInstance }),\n getSegmentContext: (options?: any) => getSegmentContext({ ...options, client: clientInstance }),\n listSeries: (options?: any) => listSeries({ ...options, client: clientInstance }),\n getSeries: (options?: any) => getSeries({ ...options, client: clientInstance }),\n getCharacter: (options?: any) => getCharacter({ ...options, client: clientInstance }),\n getSeiyuu: (options?: any) => getSeiyuu({ ...options, client: clientInstance }),\n getQuota: (options?: any) => getQuota({ ...options, client: clientInstance }),\n listCollections: (options?: any) => listCollections({ ...options, client: clientInstance }),\n createCollection: (options?: any) => createCollection({ ...options, client: clientInstance }),\n getCollection: (options?: any) => getCollection({ ...options, client: clientInstance }),\n updateCollection: (options?: any) => updateCollection({ ...options, client: clientInstance }),\n deleteCollection: (options?: any) => deleteCollection({ ...options, client: clientInstance }),\n addSegmentToCollection: (options?: any) => addSegmentToCollection({ ...options, client: clientInstance }),\n updateCollectionSegment: (options?: any) => updateCollectionSegment({ ...options, client: clientInstance }),\n removeSegmentFromCollection: (options?: any) => removeSegmentFromCollection({ ...options, client: clientInstance }),\n triggerReindex: (options?: any) => triggerReindex({ ...options, client: clientInstance }),\n listAdminQueueStats: (options?: any) => listAdminQueueStats({ ...options, client: clientInstance }),\n getAdminQueue: (options?: any) => getAdminQueue({ ...options, client: clientInstance }),\n listAdminQueueFailed: (options?: any) => listAdminQueueFailed({ ...options, client: clientInstance }),\n retryAdminQueueFailed: (options?: any) => retryAdminQueueFailed({ ...options, client: clientInstance }),\n purgeAdminQueueFailed: (options?: any) => purgeAdminQueueFailed({ ...options, client: clientInstance }),\n listAdminReports: (options?: any) => listAdminReports({ ...options, client: clientInstance }),\n updateAdminReport: (options?: any) => updateAdminReport({ ...options, client: clientInstance }),\n runAdminReview: (options?: any) => runAdminReview({ ...options, client: clientInstance }),\n listAdminReviewChecks: (options?: any) => listAdminReviewChecks({ ...options, client: clientInstance }),\n updateAdminReviewCheck: (options?: any) => updateAdminReviewCheck({ ...options, client: clientInstance }),\n listAdminReviewRuns: (options?: any) => listAdminReviewRuns({ ...options, client: clientInstance }),\n getAdminReviewRun: (options?: any) => getAdminReviewRun({ ...options, client: clientInstance }),\n listAdminReviewAllowlist: (options?: any) => listAdminReviewAllowlist({ ...options, client: clientInstance }),\n createAdminReviewAllowlistEntry: (options?: any) => createAdminReviewAllowlistEntry({ ...options, client: clientInstance }),\n deleteAdminReviewAllowlistEntry: (options?: any) => deleteAdminReviewAllowlistEntry({ ...options, client: clientInstance }),\n createMedia: (options?: any) => createMedia({ ...options, client: clientInstance }),\n updateMedia: (options?: any) => updateMedia({ ...options, client: clientInstance }),\n deleteMedia: (options?: any) => deleteMedia({ ...options, client: clientInstance }),\n createEpisode: (options?: any) => createEpisode({ ...options, client: clientInstance }),\n updateEpisode: (options?: any) => updateEpisode({ ...options, client: clientInstance }),\n deleteEpisode: (options?: any) => deleteEpisode({ ...options, client: clientInstance }),\n listSegments: (options?: any) => listSegments({ ...options, client: clientInstance }),\n createSegment: (options?: any) => createSegment({ ...options, client: clientInstance }),\n updateSegment: (options?: any) => updateSegment({ ...options, client: clientInstance }),\n deleteSegment: (options?: any) => deleteSegment({ ...options, client: clientInstance }),\n createSeries: (options?: any) => createSeries({ ...options, client: clientInstance }),\n updateSeries: (options?: any) => updateSeries({ ...options, client: clientInstance }),\n deleteSeries: (options?: any) => deleteSeries({ ...options, client: clientInstance }),\n addMediaToSeries: (options?: any) => addMediaToSeries({ ...options, client: clientInstance }),\n updateSeriesMedia: (options?: any) => updateSeriesMedia({ ...options, client: clientInstance }),\n removeMediaFromSeries: (options?: any) => removeMediaFromSeries({ ...options, client: clientInstance }),\n createReport: (options?: any) => createReport({ ...options, client: clientInstance }),\n listReports: (options?: any) => listReports({ ...options, client: clientInstance }),\n getPreferences: (options?: any) => getPreferences({ ...options, client: clientInstance }),\n updatePreferences: (options?: any) => updatePreferences({ ...options, client: clientInstance }),\n listActivity: (options?: any) => listActivity({ ...options, client: clientInstance }),\n deleteActivity: (options?: any) => deleteActivity({ ...options, client: clientInstance }),\n getActivityHeatmap: (options?: any) => getActivityHeatmap({ ...options, client: clientInstance }),\n getActivityStats: (options?: any) => getActivityStats({ ...options, client: clientInstance }),\n exportData: (options?: any) => exportData({ ...options, client: clientInstance }),\n listLabs: (options?: any) => listLabs({ ...options, client: clientInstance }),\n getAdminDashboard: (options?: any) => getAdminDashboard({ ...options, client: clientInstance }),\n getAdminHealth: (options?: any) => getAdminHealth({ ...options, client: clientInstance }),\n };\n}\n\n// Alias for convenience\nexport const createClient = createNadeshikoClient;\n"
14
+ "// This file is auto-generated by @hey-api/openapi-ts\n\nimport type { Client, Options as Options2, TDataShape } from './client';\nimport { client } from './client.gen';\nimport type { AddMediaToSeriesData, AddMediaToSeriesErrors, AddMediaToSeriesResponses, AddSegmentToCollectionData, AddSegmentToCollectionErrors, AddSegmentToCollectionResponses, AutocompleteMediaData, AutocompleteMediaErrors, AutocompleteMediaResponses, CreateAdminReviewAllowlistEntryData, CreateAdminReviewAllowlistEntryErrors, CreateAdminReviewAllowlistEntryResponses, CreateCollectionData, CreateCollectionErrors, CreateCollectionResponses, CreateEpisodeData, CreateEpisodeErrors, CreateEpisodeResponses, CreateMediaData, CreateMediaErrors, CreateMediaResponses, CreateSegmentData, CreateSegmentErrors, CreateSegmentResponses, CreateSeriesData, CreateSeriesErrors, CreateSeriesResponses, CreateUserReportData, CreateUserReportErrors, CreateUserReportResponses, DeleteAdminReviewAllowlistEntryData, DeleteAdminReviewAllowlistEntryErrors, DeleteAdminReviewAllowlistEntryResponses, DeleteCollectionData, DeleteCollectionErrors, DeleteCollectionResponses, DeleteEpisodeData, DeleteEpisodeErrors, DeleteEpisodeResponses, DeleteMediaData, DeleteMediaErrors, DeleteMediaResponses, DeleteSegmentData, DeleteSegmentErrors, DeleteSegmentResponses, DeleteSeriesData, DeleteSeriesErrors, DeleteSeriesResponses, DeleteUserActivityData, DeleteUserActivityErrors, DeleteUserActivityResponses, ExportUserDataData, ExportUserDataErrors, ExportUserDataResponses, GetAdminDashboardData, GetAdminDashboardErrors, GetAdminDashboardResponses, GetAdminHealthData, GetAdminHealthErrors, GetAdminHealthResponses, GetAdminQueueData, GetAdminQueueErrors, GetAdminQueueResponses, GetAdminReviewRunData, GetAdminReviewRunErrors, GetAdminReviewRunResponses, GetCharacterData, GetCharacterErrors, GetCharacterResponses, GetCollectionData, GetCollectionErrors, GetCollectionResponses, GetEpisodeData, GetEpisodeErrors, GetEpisodeResponses, GetMediaData, GetMediaErrors, GetMediaResponses, GetSearchStatsData, GetSearchStatsErrors, GetSearchStatsResponses, GetSegmentByUuidData, GetSegmentByUuidErrors, GetSegmentByUuidResponses, GetSegmentContextData, GetSegmentContextErrors, GetSegmentContextResponses, GetSegmentData, GetSegmentErrors, GetSegmentResponses, GetSeiyuuData, GetSeiyuuErrors, GetSeiyuuResponses, GetSeriesData, GetSeriesErrors, GetSeriesResponses, GetUserActivityHeatmapData, GetUserActivityHeatmapErrors, GetUserActivityHeatmapResponses, GetUserActivityStatsData, GetUserActivityStatsErrors, GetUserActivityStatsResponses, GetUserPreferencesData, GetUserPreferencesErrors, GetUserPreferencesResponses, GetUserQuotaData, GetUserQuotaErrors, GetUserQuotaResponses, ListAdminQueueFailedData, ListAdminQueueFailedErrors, ListAdminQueueFailedResponses, ListAdminQueueStatsData, ListAdminQueueStatsErrors, ListAdminQueueStatsResponses, ListAdminReportsData, ListAdminReportsErrors, ListAdminReportsResponses, ListAdminReviewAllowlistData, ListAdminReviewAllowlistErrors, ListAdminReviewAllowlistResponses, ListAdminReviewChecksData, ListAdminReviewChecksErrors, ListAdminReviewChecksResponses, ListAdminReviewRunsData, ListAdminReviewRunsErrors, ListAdminReviewRunsResponses, ListCollectionsData, ListCollectionsErrors, ListCollectionsResponses, ListEpisodesData, ListEpisodesErrors, ListEpisodesResponses, ListMediaData, ListMediaErrors, ListMediaResponses, ListSegmentsData, ListSegmentsErrors, ListSegmentsResponses, ListSeriesData, ListSeriesErrors, ListSeriesResponses, ListUserActivityData, ListUserActivityErrors, ListUserActivityResponses, ListUserLabsData, ListUserLabsErrors, ListUserLabsResponses, ListUserReportsData, ListUserReportsErrors, ListUserReportsResponses, PurgeAdminQueueFailedData, PurgeAdminQueueFailedErrors, PurgeAdminQueueFailedResponses, RemoveMediaFromSeriesData, RemoveMediaFromSeriesErrors, RemoveMediaFromSeriesResponses, RemoveSegmentFromCollectionData, RemoveSegmentFromCollectionErrors, RemoveSegmentFromCollectionResponses, RetryAdminQueueFailedData, RetryAdminQueueFailedErrors, RetryAdminQueueFailedResponses, RunAdminReviewData, RunAdminReviewErrors, RunAdminReviewResponses, SearchData, SearchErrors, SearchResponses, SearchWordsData, SearchWordsErrors, SearchWordsResponses, TriggerReindexData, TriggerReindexErrors, TriggerReindexResponses, UpdateAdminReportData, UpdateAdminReportErrors, UpdateAdminReportResponses, UpdateAdminReviewCheckData, UpdateAdminReviewCheckErrors, UpdateAdminReviewCheckResponses, UpdateCollectionData, UpdateCollectionErrors, UpdateCollectionResponses, UpdateCollectionSegmentData, UpdateCollectionSegmentErrors, UpdateCollectionSegmentResponses, UpdateEpisodeData, UpdateEpisodeErrors, UpdateEpisodeResponses, UpdateMediaData, UpdateMediaErrors, UpdateMediaResponses, UpdateSegmentData, UpdateSegmentErrors, UpdateSegmentResponses, UpdateSeriesData, UpdateSeriesErrors, UpdateSeriesMediaData, UpdateSeriesMediaErrors, UpdateSeriesMediaResponses, UpdateSeriesResponses, UpdateUserPreferencesData, UpdateUserPreferencesErrors, UpdateUserPreferencesResponses } from './types.gen';\n\nexport type Options<TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean> = Options2<TData, ThrowOnError> & {\n /**\n * You can provide a client instance returned by `createClient()` instead of\n * individual options. This might be also useful if you want to implement a\n * custom client.\n */\n client?: Client;\n /**\n * You can pass arbitrary values through the `meta` object. This can be\n * used to access values that aren't defined as part of the SDK function.\n */\n meta?: Record<string, unknown>;\n};\n\n/**\n * Search segments by query\n *\n * The primary search endpoint for finding Japanese segments and their translations across indexed media (anime, J-Drama, audiobooks).\n *\n * This endpoint uses Elasticsearch with advanced Japanese text analysis supporting multiple input types (romaji, kanji, kana) and providing intelligent field-based boosting.\n *\n * **Query Features**\n * - **Multi-language Support:** Search using Japanese (kanji/kana), Romaji, or English/Spanish\n * - **Boolean Operators:** `AND`, `OR`, `NOT` supported (e.g., `(cat OR dog) AND bird`)\n * - **Phrase Matching:** Use quotes for exact phrases (e.g., `\"good morning\"`), or pass `exact_match: true` to the request body\n * - **Wildcards:** `te*t` format (leading wildcards not supported)\n * - **Smart Field Selection:** Automatically chooses optimal search fields based on input type\n *\n * **Input Type Handling**\n * | Input Type | Search Strategy |\n * |------------|-----------------|\n * | **Romaji** (`go`, `taberu`) | Boosts EN/ES translations, reading form (pronunciation), and base form |\n * | **Kanji** (`食べる`, `彼女`) | Searches content and base form (dictionary form). Ignores matches by reading (homophones). |\n * | **Kana** (`たべる`, `かのじょ`) | Standard search across content, base form, and reading form |\n * | **English/Spanish** | Direct translation search |\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const search = <ThrowOnError extends boolean = false>(options?: Options<SearchData, ThrowOnError>) => (options?.client ?? client).post<SearchResponses, SearchErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/search',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers\n }\n});\n\n/**\n * Get search statistics\n *\n * Returns statistics for search filters and category tabs without fetching segment rows.\n *\n * This endpoint is optimized for UI filter panels:\n * - `media` powers the media dropdown on the right side.\n * - `categories` powers category tabs below the search bar.\n *\n * The stats are scoped by query and category filters, but are not narrowed by a selected media/episode.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSearchStats = <ThrowOnError extends boolean = false>(options?: Options<GetSearchStatsData, ThrowOnError>) => (options?.client ?? client).post<GetSearchStatsResponses, GetSearchStatsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/search/stats',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers\n }\n});\n\n/**\n * Search by multiple words\n *\n * Searches for multiple words simultaneously and aggregates results by media.\n *\n * Unlike the main search endpoint, this returns a summary of matches per media rather than individual segments.\n *\n * **Use Cases**\n * - Vocabulary discovery across media library\n * - Finding anime/dramas that use specific words\n * - Comparing word usage across different titles\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const searchWords = <ThrowOnError extends boolean = false>(options: Options<SearchWordsData, ThrowOnError>) => (options.client ?? client).post<SearchWordsResponses, SearchWordsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/search/words',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List all media\n *\n * Returns a paginated list of media with full metadata, including cover/banner images, episode counts, and genres.\n * Supports filtering by category and text search.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const listMedia = <ThrowOnError extends boolean = false>(options?: Options<ListMediaData, ThrowOnError>) => (options?.client ?? client).get<ListMediaResponses, ListMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media',\n ...options\n});\n\n/**\n * Create new media\n *\n * Creates a new media entry in the database.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const createMedia = <ThrowOnError extends boolean = false>(options: Options<CreateMediaData, ThrowOnError>) => (options.client ?? client).post<CreateMediaResponses, CreateMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Autocomplete media by name\n *\n * Returns a short list of media matching a name prefix or substring.\n * Results are ranked by exact match, then prefix match, then contains match,\n * and further sorted by name length.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const autocompleteMedia = <ThrowOnError extends boolean = false>(options: Options<AutocompleteMediaData, ThrowOnError>) => (options.client ?? client).get<AutocompleteMediaResponses, AutocompleteMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/autocomplete',\n ...options\n});\n\n/**\n * Delete media (soft delete)\n *\n * Soft-deletes a media entry by setting the `deletedAt` timestamp. The media remains in the database but is excluded from query results.\n *\n * **Permissions:** `REMOVE_MEDIA`\n *\n */\nexport const deleteMedia = <ThrowOnError extends boolean = false>(options: Options<DeleteMediaData, ThrowOnError>) => (options.client ?? client).delete<DeleteMediaResponses, DeleteMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{id}',\n ...options\n});\n\n/**\n * Get single media\n *\n * Returns a single media entry by its ID with full metadata.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getMedia = <ThrowOnError extends boolean = false>(options: Options<GetMediaData, ThrowOnError>) => (options.client ?? client).get<GetMediaResponses, GetMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{id}',\n ...options\n});\n\n/**\n * Update media\n *\n * Updates an existing media entry. Only provided fields will be updated.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const updateMedia = <ThrowOnError extends boolean = false>(options: Options<UpdateMediaData, ThrowOnError>) => (options.client ?? client).patch<UpdateMediaResponses, UpdateMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List episodes for a media\n *\n * Returns a paginated list of episodes for a specific media.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const listEpisodes = <ThrowOnError extends boolean = false>(options: Options<ListEpisodesData, ThrowOnError>) => (options.client ?? client).get<ListEpisodesResponses, ListEpisodesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes',\n ...options\n});\n\n/**\n * Create new episode\n *\n * Creates a new episode for a specific media.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const createEpisode = <ThrowOnError extends boolean = false>(options: Options<CreateEpisodeData, ThrowOnError>) => (options.client ?? client).post<CreateEpisodeResponses, CreateEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete an episode\n *\n * Soft-deletes an episode. Segments are not cascade deleted — this only hides the episode from results.\n *\n * **Permissions:** `REMOVE_MEDIA`\n *\n */\nexport const deleteEpisode = <ThrowOnError extends boolean = false>(options: Options<DeleteEpisodeData, ThrowOnError>) => (options.client ?? client).delete<DeleteEpisodeResponses, DeleteEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}',\n ...options\n});\n\n/**\n * Get single episode\n *\n * Returns a specific episode by media ID and episode number.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getEpisode = <ThrowOnError extends boolean = false>(options: Options<GetEpisodeData, ThrowOnError>) => (options.client ?? client).get<GetEpisodeResponses, GetEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}',\n ...options\n});\n\n/**\n * Update episode\n *\n * Updates an existing episode. Only provided fields will be updated.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const updateEpisode = <ThrowOnError extends boolean = false>(options: Options<UpdateEpisodeData, ThrowOnError>) => (options.client ?? client).patch<UpdateEpisodeResponses, UpdateEpisodeErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List segments for an episode\n *\n * Returns a paginated list of segments for a specific episode.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const listSegments = <ThrowOnError extends boolean = false>(options: Options<ListSegmentsData, ThrowOnError>) => (options.client ?? client).get<ListSegmentsResponses, ListSegmentsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments',\n ...options\n});\n\n/**\n * Create new segment\n *\n * Creates a new segment for a specific episode.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const createSegment = <ThrowOnError extends boolean = false>(options: Options<CreateSegmentData, ThrowOnError>) => (options.client ?? client).post<CreateSegmentResponses, CreateSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete segment\n *\n * Soft-deletes a segment by setting its status to DELETED.\n *\n * **Permissions:** `REMOVE_MEDIA`\n *\n */\nexport const deleteSegment = <ThrowOnError extends boolean = false>(options: Options<DeleteSegmentData, ThrowOnError>) => (options.client ?? client).delete<DeleteSegmentResponses, DeleteSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments/{id}',\n ...options\n});\n\n/**\n * Get single segment\n *\n * Returns a specific segment by its ID within the media/episode hierarchy.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSegment = <ThrowOnError extends boolean = false>(options: Options<GetSegmentData, ThrowOnError>) => (options.client ?? client).get<GetSegmentResponses, GetSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments/{id}',\n ...options\n});\n\n/**\n * Update segment\n *\n * Updates an existing segment. Only provided fields will be updated.\n *\n * **Permissions:** `UPDATE_MEDIA`\n *\n */\nexport const updateSegment = <ThrowOnError extends boolean = false>(options: Options<UpdateSegmentData, ThrowOnError>) => (options.client ?? client).patch<UpdateSegmentResponses, UpdateSegmentErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/{mediaId}/episodes/{episodeNumber}/segments/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get segment by UUID\n *\n * Returns a specific segment by its UUID. A shortcut alternative to the nested `/media/{mediaId}/episodes/{episodeNumber}/segments/{id}` path.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSegmentByUuid = <ThrowOnError extends boolean = false>(options: Options<GetSegmentByUuidData, ThrowOnError>) => (options.client ?? client).get<GetSegmentByUuidResponses, GetSegmentByUuidErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/segments/{uuid}',\n ...options\n});\n\n/**\n * Get surrounding context for a segment\n *\n * Retrieves segments surrounding a specific segment within an episode.\n * Returns segments both before and after the target, providing dialogue context for how a sentence is used.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSegmentContext = <ThrowOnError extends boolean = false>(options: Options<GetSegmentContextData, ThrowOnError>) => (options.client ?? client).get<GetSegmentContextResponses, GetSegmentContextErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/segments/{uuid}/context',\n ...options\n});\n\n/**\n * List all series\n *\n * Returns a paginated list of media series groupings.\n *\n */\nexport const listSeries = <ThrowOnError extends boolean = false>(options?: Options<ListSeriesData, ThrowOnError>) => (options?.client ?? client).get<ListSeriesResponses, ListSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/media/series',\n ...options\n});\n\n/**\n * Create series\n *\n * Creates a new media series grouping.\n *\n */\nexport const createSeries = <ThrowOnError extends boolean = false>(options: Options<CreateSeriesData, ThrowOnError>) => (options.client ?? client).post<CreateSeriesResponses, CreateSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete series\n *\n * Deletes a series and all its media associations.\n *\n */\nexport const deleteSeries = <ThrowOnError extends boolean = false>(options: Options<DeleteSeriesData, ThrowOnError>) => (options.client ?? client).delete<DeleteSeriesResponses, DeleteSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}',\n ...options\n});\n\n/**\n * Get series details\n *\n * Returns a series with all media entries sorted by position.\n *\n */\nexport const getSeries = <ThrowOnError extends boolean = false>(options: Options<GetSeriesData, ThrowOnError>) => (options.client ?? client).get<GetSeriesResponses, GetSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }, {\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/media/series/{id}',\n ...options\n});\n\n/**\n * Update series metadata\n *\n * Updates series localized names.\n *\n */\nexport const updateSeries = <ThrowOnError extends boolean = false>(options: Options<UpdateSeriesData, ThrowOnError>) => (options.client ?? client).patch<UpdateSeriesResponses, UpdateSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Add media to series\n *\n * Adds a media entry to a series at a specific position.\n *\n */\nexport const addMediaToSeries = <ThrowOnError extends boolean = false>(options: Options<AddMediaToSeriesData, ThrowOnError>) => (options.client ?? client).post<AddMediaToSeriesResponses, AddMediaToSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}/media',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Remove media from series\n *\n * Removes a media entry from a series.\n *\n */\nexport const removeMediaFromSeries = <ThrowOnError extends boolean = false>(options: Options<RemoveMediaFromSeriesData, ThrowOnError>) => (options.client ?? client).delete<RemoveMediaFromSeriesResponses, RemoveMediaFromSeriesErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}/media/{mediaId}',\n ...options\n});\n\n/**\n * Update media position in series\n *\n * Updates the position of a media entry in a series.\n *\n */\nexport const updateSeriesMedia = <ThrowOnError extends boolean = false>(options: Options<UpdateSeriesMediaData, ThrowOnError>) => (options.client ?? client).patch<UpdateSeriesMediaResponses, UpdateSeriesMediaErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/series/{id}/media/{mediaId}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get character details\n *\n * Returns a character with their voice actors (seiyuu) and all media appearances.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getCharacter = <ThrowOnError extends boolean = false>(options: Options<GetCharacterData, ThrowOnError>) => (options.client ?? client).get<GetCharacterResponses, GetCharacterErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/characters/{id}',\n ...options\n});\n\n/**\n * Get seiyuu details\n *\n * Returns a voice actor (seiyuu) with all characters they voiced and their media appearances.\n *\n * **Permissions:** `READ_MEDIA`\n *\n */\nexport const getSeiyuu = <ThrowOnError extends boolean = false>(options: Options<GetSeiyuuData, ThrowOnError>) => (options.client ?? client).get<GetSeiyuuResponses, GetSeiyuuErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/media/seiyuu/{id}',\n ...options\n});\n\n/**\n * Get current monthly API quota\n *\n * Returns the API quota usage for the current billing period.\n * Accepts both session cookie and API key authentication.\n *\n * **Permissions:** Session authentication (cookie-based) or API key (`READ_MEDIA`).\n *\n */\nexport const getUserQuota = <ThrowOnError extends boolean = false>(options?: Options<GetUserQuotaData, ThrowOnError>) => (options?.client ?? client).get<GetUserQuotaResponses, GetUserQuotaErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }, { scheme: 'bearer', type: 'http' }],\n url: '/v1/user/quota',\n ...options\n});\n\n/**\n * List user's own reports\n *\n * Returns the authenticated user's submitted reports with cursor pagination.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const listUserReports = <ThrowOnError extends boolean = false>(options?: Options<ListUserReportsData, ThrowOnError>) => (options?.client ?? client).get<ListUserReportsResponses, ListUserReportsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/reports',\n ...options\n});\n\n/**\n * Create a new report\n *\n * Submit a report for a segment or media entry.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const createUserReport = <ThrowOnError extends boolean = false>(options: Options<CreateUserReportData, ThrowOnError>) => (options.client ?? client).post<CreateUserReportResponses, CreateUserReportErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/reports',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Get user preferences\n *\n * Returns the authenticated user's full preferences object.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const getUserPreferences = <ThrowOnError extends boolean = false>(options?: Options<GetUserPreferencesData, ThrowOnError>) => (options?.client ?? client).get<GetUserPreferencesResponses, GetUserPreferencesErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/preferences',\n ...options\n});\n\n/**\n * Update user preferences\n *\n * Deep-merges a partial preferences update into the user's existing preferences.\n * Only the provided keys are updated; all other keys are preserved.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const updateUserPreferences = <ThrowOnError extends boolean = false>(options: Options<UpdateUserPreferencesData, ThrowOnError>) => (options.client ?? client).patch<UpdateUserPreferencesResponses, UpdateUserPreferencesErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/preferences',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Clear user activity history\n *\n * Deletes the authenticated user's activity history. Optionally filter by activity type.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const deleteUserActivity = <ThrowOnError extends boolean = false>(options?: Options<DeleteUserActivityData, ThrowOnError>) => (options?.client ?? client).delete<DeleteUserActivityResponses, DeleteUserActivityErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity',\n ...options\n});\n\n/**\n * Get user activity history\n *\n * Returns the authenticated user's activity history with cursor-based pagination.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const listUserActivity = <ThrowOnError extends boolean = false>(options?: Options<ListUserActivityData, ThrowOnError>) => (options?.client ?? client).get<ListUserActivityResponses, ListUserActivityErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity',\n ...options\n});\n\n/**\n * Get activity heatmap data\n *\n * Returns daily activity counts for the authenticated user, grouped by date.\n * Designed for rendering a GitHub-style contribution heatmap.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const getUserActivityHeatmap = <ThrowOnError extends boolean = false>(options?: Options<GetUserActivityHeatmapData, ThrowOnError>) => (options?.client ?? client).get<GetUserActivityHeatmapResponses, GetUserActivityHeatmapErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity/heatmap',\n ...options\n});\n\n/**\n * Get user activity statistics\n *\n * Returns aggregate statistics about the authenticated user's activity:\n * total searches, exports, plays, and study streak.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const getUserActivityStats = <ThrowOnError extends boolean = false>(options?: Options<GetUserActivityStatsData, ThrowOnError>) => (options?.client ?? client).get<GetUserActivityStatsResponses, GetUserActivityStatsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/activity/stats',\n ...options\n});\n\n/**\n * Export all user data\n *\n * Returns a full JSON export of all user-related data for GDPR data portability.\n * Includes profile, preferences, activity history, collections, and reports.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const exportUserData = <ThrowOnError extends boolean = false>(options?: Options<ExportUserDataData, ThrowOnError>) => (options?.client ?? client).get<ExportUserDataResponses, ExportUserDataErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/export',\n ...options\n});\n\n/**\n * List lab features with user opt-in status\n *\n * Returns all available lab features merged with the authenticated user's\n * opt-in status. Features gated by role are excluded if the user lacks\n * the required role.\n *\n * **Permissions:** Session authentication (cookie-based).\n *\n */\nexport const listUserLabs = <ThrowOnError extends boolean = false>(options?: Options<ListUserLabsData, ThrowOnError>) => (options?.client ?? client).get<ListUserLabsResponses, ListUserLabsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/user/labs',\n ...options\n});\n\n/**\n * List user's collections\n *\n * Returns all collections for the authenticated user. Can filter by visibility.\n *\n */\nexport const listCollections = <ThrowOnError extends boolean = false>(options?: Options<ListCollectionsData, ThrowOnError>) => (options?.client ?? client).get<ListCollectionsResponses, ListCollectionsErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections',\n ...options\n});\n\n/**\n * Create collection\n *\n * Creates a new segment collection for the authenticated user.\n *\n */\nexport const createCollection = <ThrowOnError extends boolean = false>(options: Options<CreateCollectionData, ThrowOnError>) => (options.client ?? client).post<CreateCollectionResponses, CreateCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Delete collection\n *\n * Deletes a collection and all its segment entries. Requires collection ownership.\n *\n */\nexport const deleteCollection = <ThrowOnError extends boolean = false>(options: Options<DeleteCollectionData, ThrowOnError>) => (options.client ?? client).delete<DeleteCollectionResponses, DeleteCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}',\n ...options\n});\n\n/**\n * Get collection details\n *\n * Returns a collection with paginated segments and their search result data.\n *\n */\nexport const getCollection = <ThrowOnError extends boolean = false>(options: Options<GetCollectionData, ThrowOnError>) => (options.client ?? client).get<GetCollectionResponses, GetCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}',\n ...options\n});\n\n/**\n * Update collection metadata\n *\n * Updates collection name or visibility. Requires collection ownership.\n *\n */\nexport const updateCollection = <ThrowOnError extends boolean = false>(options: Options<UpdateCollectionData, ThrowOnError>) => (options.client ?? client).patch<UpdateCollectionResponses, UpdateCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Add segment to collection\n *\n * Adds a segment to a collection. Requires collection ownership.\n *\n */\nexport const addSegmentToCollection = <ThrowOnError extends boolean = false>(options: Options<AddSegmentToCollectionData, ThrowOnError>) => (options.client ?? client).post<AddSegmentToCollectionResponses, AddSegmentToCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}/segments',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Remove segment from collection\n *\n * Removes a segment from a collection. Requires collection ownership.\n *\n */\nexport const removeSegmentFromCollection = <ThrowOnError extends boolean = false>(options: Options<RemoveSegmentFromCollectionData, ThrowOnError>) => (options.client ?? client).delete<RemoveSegmentFromCollectionResponses, RemoveSegmentFromCollectionErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}/segments/{uuid}',\n ...options\n});\n\n/**\n * Update segment in collection\n *\n * Updates the note or position of a segment in a collection. Requires collection ownership.\n *\n */\nexport const updateCollectionSegment = <ThrowOnError extends boolean = false>(options: Options<UpdateCollectionSegmentData, ThrowOnError>) => (options.client ?? client).patch<UpdateCollectionSegmentResponses, UpdateCollectionSegmentErrors, ThrowOnError>({\n security: [{\n in: 'cookie',\n name: 'nadeshiko.session_token',\n type: 'apiKey'\n }],\n url: '/v1/collections/{id}/segments/{uuid}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Admin dashboard statistics\n *\n * Returns at-a-glance statistics for the admin dashboard including media counts,\n * user counts, and system health information.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminDashboard = <ThrowOnError extends boolean = false>(options?: Options<GetAdminDashboardData, ThrowOnError>) => (options?.client ?? client).get<GetAdminDashboardResponses, GetAdminDashboardErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/dashboard',\n ...options\n});\n\n/**\n * System health check\n *\n * Returns connectivity status and version information for all backend subsystems\n * (Elasticsearch, PostgreSQL, application).\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminHealth = <ThrowOnError extends boolean = false>(options?: Options<GetAdminHealthData, ThrowOnError>) => (options?.client ?? client).get<GetAdminHealthResponses, GetAdminHealthErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/health',\n ...options\n});\n\n/**\n * Reindex database into Elasticsearch\n *\n * Reindexes segments from the PostgreSQL database into Elasticsearch.\n * Allows filtering by specific media IDs or episodes.\n *\n * **Behavior:**\n * - If no filters provided, reindexes all segments\n * - If `mediaIds` provided, reindexes all segments from those media\n * - If `episodes` provided, reindexes only the specified episodes\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const triggerReindex = <ThrowOnError extends boolean = false>(options?: Options<TriggerReindexData, ThrowOnError>) => (options?.client ?? client).post<TriggerReindexResponses, TriggerReindexErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/reindex',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options?.headers\n }\n});\n\n/**\n * Get queue statistics\n *\n * Returns statistics for all ES sync queues including pending and failed job counts.\n *\n * **Use cases:**\n * - Monitor queue health\n * - Detect stuck jobs\n * - Check backlog size\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminQueueStats = <ThrowOnError extends boolean = false>(options?: Options<ListAdminQueueStatsData, ThrowOnError>) => (options?.client ?? client).get<ListAdminQueueStatsResponses, ListAdminQueueStatsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/stats',\n ...options\n});\n\n/**\n * Get detailed queue information\n *\n * Returns live queue stats and queue metadata from PgBoss for a specific queue.\n *\n * **Queue names:**\n * - `es-sync-create` - Jobs to create new segments in Elasticsearch\n * - `es-sync-update` - Jobs to update existing segments\n * - `es-sync-delete` - Jobs to delete segments\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminQueue = <ThrowOnError extends boolean = false>(options: Options<GetAdminQueueData, ThrowOnError>) => (options.client ?? client).get<GetAdminQueueResponses, GetAdminQueueErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}',\n ...options\n});\n\n/**\n * Get failed jobs from a queue\n *\n * Returns jobs that have exceeded their retry limit and permanently failed.\n *\n * **Use cases:**\n * - Identify segments that failed to sync to Elasticsearch\n * - Debug persistent sync issues\n * - Decide whether to retry or purge failed jobs\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminQueueFailed = <ThrowOnError extends boolean = false>(options: Options<ListAdminQueueFailedData, ThrowOnError>) => (options.client ?? client).get<ListAdminQueueFailedResponses, ListAdminQueueFailedErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}/failed',\n ...options\n});\n\n/**\n * Retry failed jobs from a queue\n *\n * Re-enqueues all failed jobs from a specific queue for another attempt.\n *\n * **Use cases:**\n * - Retry jobs that failed due to temporary Elasticsearch issues\n * - Recover from network blips\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const retryAdminQueueFailed = <ThrowOnError extends boolean = false>(options: Options<RetryAdminQueueFailedData, ThrowOnError>) => (options.client ?? client).post<RetryAdminQueueFailedResponses, RetryAdminQueueFailedErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}/retry',\n ...options\n});\n\n/**\n * Purge failed jobs from a queue\n *\n * Permanently deletes all failed jobs from a queue.\n * This does **not** re-sync the affected segments — use the reindex endpoint for that.\n *\n * **Use cases:**\n * - Clean up old failed jobs after investigating\n * - Reset a queue after fixing the underlying issue\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const purgeAdminQueueFailed = <ThrowOnError extends boolean = false>(options: Options<PurgeAdminQueueFailedData, ThrowOnError>) => (options.client ?? client).delete<PurgeAdminQueueFailedResponses, PurgeAdminQueueFailedErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/queues/{queueName}/purge',\n ...options\n});\n\n/**\n * List all reports\n *\n * Returns all reports with filtering and cursor pagination.\n * Supports filtering by source (USER/AUTO) to separate user reports from auto-check findings.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReports = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReportsData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReportsResponses, ListAdminReportsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/reports',\n ...options\n});\n\n/**\n * Update a report\n *\n * Updates the status and/or admin notes of a report.\n * Works for both USER and AUTO reports.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const updateAdminReport = <ThrowOnError extends boolean = false>(options: Options<UpdateAdminReportData, ThrowOnError>) => (options.client ?? client).patch<UpdateAdminReportResponses, UpdateAdminReportErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/reports/{id}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Run auto-checks\n *\n * Triggers all enabled auto-checks. Creates ReviewCheckRun records and AUTO reports for any findings.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const runAdminReview = <ThrowOnError extends boolean = false>(options?: Options<RunAdminReviewData, ThrowOnError>) => (options?.client ?? client).post<RunAdminReviewResponses, RunAdminReviewErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/run',\n ...options\n});\n\n/**\n * List all review checks\n *\n * Returns all check definitions with current config, threshold schema, and latest run info.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReviewChecks = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReviewChecksData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReviewChecksResponses, ListAdminReviewChecksErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/checks',\n ...options\n});\n\n/**\n * Update a review check config\n *\n * Updates the threshold values or enabled status of a check.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const updateAdminReviewCheck = <ThrowOnError extends boolean = false>(options: Options<UpdateAdminReviewCheckData, ThrowOnError>) => (options.client ?? client).patch<UpdateAdminReviewCheckResponses, UpdateAdminReviewCheckErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/checks/{name}',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * List past check runs\n *\n * Returns past review check runs with summary stats. Supports filtering by check name and cursor pagination.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReviewRuns = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReviewRunsData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReviewRunsResponses, ListAdminReviewRunsErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/runs',\n ...options\n});\n\n/**\n * Get a specific run's details\n *\n * Returns a specific review check run record with its linked reports.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const getAdminReviewRun = <ThrowOnError extends boolean = false>(options: Options<GetAdminReviewRunData, ThrowOnError>) => (options.client ?? client).get<GetAdminReviewRunResponses, GetAdminReviewRunErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/runs/{id}',\n ...options\n});\n\n/**\n * List allowlisted items\n *\n * Returns all allowlisted items (media/episodes) that are excluded from auto-check runs.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const listAdminReviewAllowlist = <ThrowOnError extends boolean = false>(options?: Options<ListAdminReviewAllowlistData, ThrowOnError>) => (options?.client ?? client).get<ListAdminReviewAllowlistResponses, ListAdminReviewAllowlistErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/allowlist',\n ...options\n});\n\n/**\n * Add to allowlist\n *\n * Adds a media or episode to the allowlist for a specific check, excluding it from future auto-check runs.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const createAdminReviewAllowlistEntry = <ThrowOnError extends boolean = false>(options: Options<CreateAdminReviewAllowlistEntryData, ThrowOnError>) => (options.client ?? client).post<CreateAdminReviewAllowlistEntryResponses, CreateAdminReviewAllowlistEntryErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/allowlist',\n ...options,\n headers: {\n 'Content-Type': 'application/json',\n ...options.headers\n }\n});\n\n/**\n * Remove from allowlist\n *\n * Removes an item from the review allowlist, re-enabling auto-checks for that media/episode.\n *\n * **Permissions:** `ADD_MEDIA`\n *\n */\nexport const deleteAdminReviewAllowlistEntry = <ThrowOnError extends boolean = false>(options: Options<DeleteAdminReviewAllowlistEntryData, ThrowOnError>) => (options.client ?? client).delete<DeleteAdminReviewAllowlistEntryResponses, DeleteAdminReviewAllowlistEntryErrors, ThrowOnError>({\n security: [{ scheme: 'bearer', type: 'http' }],\n url: '/v1/admin/review/allowlist/{id}',\n ...options\n});\n",
15
+ "// This file is auto-generated by scripts/generate.ts\n\nimport { createClient as createApiClient, createConfig, type Client } from './client';\nimport type { Auth } from './core/auth.gen';\nimport type { ClientOptions } from './types.gen';\nimport { search, getSearchStats, searchWords, listMedia, getMedia, listEpisodes, getEpisode, getSegment, getSegmentByUuid, getSegmentContext, listSeries, getSeries, getCharacter, getSeiyuu, getUserQuota, listCollections, createCollection, getCollection, updateCollection, deleteCollection, addSegmentToCollection, updateCollectionSegment, removeSegmentFromCollection, triggerReindex, listAdminQueueStats, getAdminQueue, listAdminQueueFailed, retryAdminQueueFailed, purgeAdminQueueFailed, listAdminReports, updateAdminReport, runAdminReview, listAdminReviewChecks, updateAdminReviewCheck, listAdminReviewRuns, getAdminReviewRun, listAdminReviewAllowlist, createAdminReviewAllowlistEntry, deleteAdminReviewAllowlistEntry, createMedia, autocompleteMedia, updateMedia, deleteMedia, createEpisode, updateEpisode, deleteEpisode, listSegments, createSegment, updateSegment, deleteSegment, createSeries, updateSeries, deleteSeries, addMediaToSeries, updateSeriesMedia, removeMediaFromSeries, createUserReport, listUserReports, getUserPreferences, updateUserPreferences, listUserActivity, deleteUserActivity, getUserActivityHeatmap, getUserActivityStats, exportUserData, listUserLabs, getAdminDashboard, getAdminHealth } from './sdk.gen';\n\nexport interface NadeshikoConfig {\n /**\n * API key for Bearer token authentication.\n * Used for server-side access and endpoints requiring API key scope.\n */\n apiKey?: string;\n /**\n * A function that returns the session token for cookie-based authentication.\n * Used for user-specific endpoints (e.g. /v1/user/*).\n * Defaults to reading the `nadeshiko.session_token` cookie from `document.cookie`.\n */\n sessionToken?: () => string | undefined | Promise<string | undefined>;\n baseUrl?: 'LOCAL' | 'DEVELOPMENT' | 'PRODUCTION' | string;\n}\n\nconst environments = {\n LOCAL: 'http://localhost:5000/api',\n DEVELOPMENT: 'https://api.dev.brigadasos.xyz/api',\n PRODUCTION: 'https://api.brigadasos.xyz/api',\n} as const;\n\nexport type NadeshikoClient = {\n client: Client;\n search: typeof search;\n getSearchStats: typeof getSearchStats;\n searchWords: typeof searchWords;\n listMedia: typeof listMedia;\n getMedia: typeof getMedia;\n listEpisodes: typeof listEpisodes;\n getEpisode: typeof getEpisode;\n getSegment: typeof getSegment;\n getSegmentByUuid: typeof getSegmentByUuid;\n getSegmentContext: typeof getSegmentContext;\n listSeries: typeof listSeries;\n getSeries: typeof getSeries;\n getCharacter: typeof getCharacter;\n getSeiyuu: typeof getSeiyuu;\n getUserQuota: typeof getUserQuota;\n listCollections: typeof listCollections;\n createCollection: typeof createCollection;\n getCollection: typeof getCollection;\n updateCollection: typeof updateCollection;\n deleteCollection: typeof deleteCollection;\n addSegmentToCollection: typeof addSegmentToCollection;\n updateCollectionSegment: typeof updateCollectionSegment;\n removeSegmentFromCollection: typeof removeSegmentFromCollection;\n triggerReindex: typeof triggerReindex;\n listAdminQueueStats: typeof listAdminQueueStats;\n getAdminQueue: typeof getAdminQueue;\n listAdminQueueFailed: typeof listAdminQueueFailed;\n retryAdminQueueFailed: typeof retryAdminQueueFailed;\n purgeAdminQueueFailed: typeof purgeAdminQueueFailed;\n listAdminReports: typeof listAdminReports;\n updateAdminReport: typeof updateAdminReport;\n runAdminReview: typeof runAdminReview;\n listAdminReviewChecks: typeof listAdminReviewChecks;\n updateAdminReviewCheck: typeof updateAdminReviewCheck;\n listAdminReviewRuns: typeof listAdminReviewRuns;\n getAdminReviewRun: typeof getAdminReviewRun;\n listAdminReviewAllowlist: typeof listAdminReviewAllowlist;\n createAdminReviewAllowlistEntry: typeof createAdminReviewAllowlistEntry;\n deleteAdminReviewAllowlistEntry: typeof deleteAdminReviewAllowlistEntry;\n createMedia: typeof createMedia;\n autocompleteMedia: typeof autocompleteMedia;\n updateMedia: typeof updateMedia;\n deleteMedia: typeof deleteMedia;\n createEpisode: typeof createEpisode;\n updateEpisode: typeof updateEpisode;\n deleteEpisode: typeof deleteEpisode;\n listSegments: typeof listSegments;\n createSegment: typeof createSegment;\n updateSegment: typeof updateSegment;\n deleteSegment: typeof deleteSegment;\n createSeries: typeof createSeries;\n updateSeries: typeof updateSeries;\n deleteSeries: typeof deleteSeries;\n addMediaToSeries: typeof addMediaToSeries;\n updateSeriesMedia: typeof updateSeriesMedia;\n removeMediaFromSeries: typeof removeMediaFromSeries;\n createUserReport: typeof createUserReport;\n listUserReports: typeof listUserReports;\n getUserPreferences: typeof getUserPreferences;\n updateUserPreferences: typeof updateUserPreferences;\n listUserActivity: typeof listUserActivity;\n deleteUserActivity: typeof deleteUserActivity;\n getUserActivityHeatmap: typeof getUserActivityHeatmap;\n getUserActivityStats: typeof getUserActivityStats;\n exportUserData: typeof exportUserData;\n listUserLabs: typeof listUserLabs;\n getAdminDashboard: typeof getAdminDashboard;\n getAdminHealth: typeof getAdminHealth;\n };\n\nconst defaultSessionTokenGetter = (): string | undefined => {\n if (typeof document === 'undefined') return undefined;\n const match = document.cookie.match(/(?:^|;\\s*)nadeshiko\\.session_token=([^;]*)/);\n return match ? decodeURIComponent(match[1]) : undefined;\n};\n\nexport function createNadeshikoClient(config: NadeshikoConfig): NadeshikoClient {\n const baseUrl = config.baseUrl\n ? (config.baseUrl in environments\n ? environments[config.baseUrl as keyof typeof environments]\n : config.baseUrl)\n : environments.PRODUCTION;\n\n const getSessionToken = config.sessionToken ?? defaultSessionTokenGetter;\n\n const clientInstance = createApiClient(createConfig<ClientOptions>({\n baseUrl,\n auth: (auth: Auth) => {\n if (auth.in === 'cookie') {\n return getSessionToken();\n }\n return config.apiKey;\n },\n }));\n\n return {\n client: clientInstance,\n search: (options?: any) => search({ ...options, client: clientInstance }),\n getSearchStats: (options?: any) => getSearchStats({ ...options, client: clientInstance }),\n searchWords: (options?: any) => searchWords({ ...options, client: clientInstance }),\n listMedia: (options?: any) => listMedia({ ...options, client: clientInstance }),\n getMedia: (options?: any) => getMedia({ ...options, client: clientInstance }),\n listEpisodes: (options?: any) => listEpisodes({ ...options, client: clientInstance }),\n getEpisode: (options?: any) => getEpisode({ ...options, client: clientInstance }),\n getSegment: (options?: any) => getSegment({ ...options, client: clientInstance }),\n getSegmentByUuid: (options?: any) => getSegmentByUuid({ ...options, client: clientInstance }),\n getSegmentContext: (options?: any) => getSegmentContext({ ...options, client: clientInstance }),\n listSeries: (options?: any) => listSeries({ ...options, client: clientInstance }),\n getSeries: (options?: any) => getSeries({ ...options, client: clientInstance }),\n getCharacter: (options?: any) => getCharacter({ ...options, client: clientInstance }),\n getSeiyuu: (options?: any) => getSeiyuu({ ...options, client: clientInstance }),\n getUserQuota: (options?: any) => getUserQuota({ ...options, client: clientInstance }),\n listCollections: (options?: any) => listCollections({ ...options, client: clientInstance }),\n createCollection: (options?: any) => createCollection({ ...options, client: clientInstance }),\n getCollection: (options?: any) => getCollection({ ...options, client: clientInstance }),\n updateCollection: (options?: any) => updateCollection({ ...options, client: clientInstance }),\n deleteCollection: (options?: any) => deleteCollection({ ...options, client: clientInstance }),\n addSegmentToCollection: (options?: any) => addSegmentToCollection({ ...options, client: clientInstance }),\n updateCollectionSegment: (options?: any) => updateCollectionSegment({ ...options, client: clientInstance }),\n removeSegmentFromCollection: (options?: any) => removeSegmentFromCollection({ ...options, client: clientInstance }),\n triggerReindex: (options?: any) => triggerReindex({ ...options, client: clientInstance }),\n listAdminQueueStats: (options?: any) => listAdminQueueStats({ ...options, client: clientInstance }),\n getAdminQueue: (options?: any) => getAdminQueue({ ...options, client: clientInstance }),\n listAdminQueueFailed: (options?: any) => listAdminQueueFailed({ ...options, client: clientInstance }),\n retryAdminQueueFailed: (options?: any) => retryAdminQueueFailed({ ...options, client: clientInstance }),\n purgeAdminQueueFailed: (options?: any) => purgeAdminQueueFailed({ ...options, client: clientInstance }),\n listAdminReports: (options?: any) => listAdminReports({ ...options, client: clientInstance }),\n updateAdminReport: (options?: any) => updateAdminReport({ ...options, client: clientInstance }),\n runAdminReview: (options?: any) => runAdminReview({ ...options, client: clientInstance }),\n listAdminReviewChecks: (options?: any) => listAdminReviewChecks({ ...options, client: clientInstance }),\n updateAdminReviewCheck: (options?: any) => updateAdminReviewCheck({ ...options, client: clientInstance }),\n listAdminReviewRuns: (options?: any) => listAdminReviewRuns({ ...options, client: clientInstance }),\n getAdminReviewRun: (options?: any) => getAdminReviewRun({ ...options, client: clientInstance }),\n listAdminReviewAllowlist: (options?: any) => listAdminReviewAllowlist({ ...options, client: clientInstance }),\n createAdminReviewAllowlistEntry: (options?: any) => createAdminReviewAllowlistEntry({ ...options, client: clientInstance }),\n deleteAdminReviewAllowlistEntry: (options?: any) => deleteAdminReviewAllowlistEntry({ ...options, client: clientInstance }),\n createMedia: (options?: any) => createMedia({ ...options, client: clientInstance }),\n autocompleteMedia: (options?: any) => autocompleteMedia({ ...options, client: clientInstance }),\n updateMedia: (options?: any) => updateMedia({ ...options, client: clientInstance }),\n deleteMedia: (options?: any) => deleteMedia({ ...options, client: clientInstance }),\n createEpisode: (options?: any) => createEpisode({ ...options, client: clientInstance }),\n updateEpisode: (options?: any) => updateEpisode({ ...options, client: clientInstance }),\n deleteEpisode: (options?: any) => deleteEpisode({ ...options, client: clientInstance }),\n listSegments: (options?: any) => listSegments({ ...options, client: clientInstance }),\n createSegment: (options?: any) => createSegment({ ...options, client: clientInstance }),\n updateSegment: (options?: any) => updateSegment({ ...options, client: clientInstance }),\n deleteSegment: (options?: any) => deleteSegment({ ...options, client: clientInstance }),\n createSeries: (options?: any) => createSeries({ ...options, client: clientInstance }),\n updateSeries: (options?: any) => updateSeries({ ...options, client: clientInstance }),\n deleteSeries: (options?: any) => deleteSeries({ ...options, client: clientInstance }),\n addMediaToSeries: (options?: any) => addMediaToSeries({ ...options, client: clientInstance }),\n updateSeriesMedia: (options?: any) => updateSeriesMedia({ ...options, client: clientInstance }),\n removeMediaFromSeries: (options?: any) => removeMediaFromSeries({ ...options, client: clientInstance }),\n createUserReport: (options?: any) => createUserReport({ ...options, client: clientInstance }),\n listUserReports: (options?: any) => listUserReports({ ...options, client: clientInstance }),\n getUserPreferences: (options?: any) => getUserPreferences({ ...options, client: clientInstance }),\n updateUserPreferences: (options?: any) => updateUserPreferences({ ...options, client: clientInstance }),\n listUserActivity: (options?: any) => listUserActivity({ ...options, client: clientInstance }),\n deleteUserActivity: (options?: any) => deleteUserActivity({ ...options, client: clientInstance }),\n getUserActivityHeatmap: (options?: any) => getUserActivityHeatmap({ ...options, client: clientInstance }),\n getUserActivityStats: (options?: any) => getUserActivityStats({ ...options, client: clientInstance }),\n exportUserData: (options?: any) => exportUserData({ ...options, client: clientInstance }),\n listUserLabs: (options?: any) => listUserLabs({ ...options, client: clientInstance }),\n getAdminDashboard: (options?: any) => getAdminDashboard({ ...options, client: clientInstance }),\n getAdminHealth: (options?: any) => getAdminHealth({ ...options, client: clientInstance }),\n };\n}\n\n"
16
16
  ],
17
- "mappings": "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",
18
- "debugId": "1A71ABED851E7ACE64756E2164756E21",
17
+ "mappings": "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",
18
+ "debugId": "4B0EFE7CA1477FC664756E2164756E21",
19
19
  "names": []
20
20
  }
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- export { search, getSearchStats, searchWords, listMedia, getMedia, listEpisodes, getEpisode, getSegment, getSegmentByUuid, getSegmentContext, listSeries, getSeries, getCharacter, getSeiyuu, getQuota, listCollections, createCollection, getCollection, updateCollection, deleteCollection, addSegmentToCollection, updateCollectionSegment, removeSegmentFromCollection, triggerReindex, listAdminQueueStats, getAdminQueue, listAdminQueueFailed, retryAdminQueueFailed, purgeAdminQueueFailed, listAdminReports, updateAdminReport, runAdminReview, listAdminReviewChecks, updateAdminReviewCheck, listAdminReviewRuns, getAdminReviewRun, listAdminReviewAllowlist, createAdminReviewAllowlistEntry, deleteAdminReviewAllowlistEntry, createMedia, updateMedia, deleteMedia, createEpisode, updateEpisode, deleteEpisode, listSegments, createSegment, updateSegment, deleteSegment, createSeries, updateSeries, deleteSeries, addMediaToSeries, updateSeriesMedia, removeMediaFromSeries, createReport, listReports, getPreferences, updatePreferences, listActivity, deleteActivity, getActivityHeatmap, getActivityStats, exportData, listLabs, getAdminDashboard, getAdminHealth, type Options } from './sdk.gen';
2
- export { createClient, createNadeshikoClient, type NadeshikoClient, type NadeshikoConfig } from './nadeshiko.gen';
1
+ export { search, getSearchStats, searchWords, listMedia, getMedia, listEpisodes, getEpisode, getSegment, getSegmentByUuid, getSegmentContext, listSeries, getSeries, getCharacter, getSeiyuu, getUserQuota, listCollections, createCollection, getCollection, updateCollection, deleteCollection, addSegmentToCollection, updateCollectionSegment, removeSegmentFromCollection, triggerReindex, listAdminQueueStats, getAdminQueue, listAdminQueueFailed, retryAdminQueueFailed, purgeAdminQueueFailed, listAdminReports, updateAdminReport, runAdminReview, listAdminReviewChecks, updateAdminReviewCheck, listAdminReviewRuns, getAdminReviewRun, listAdminReviewAllowlist, createAdminReviewAllowlistEntry, deleteAdminReviewAllowlistEntry, createMedia, autocompleteMedia, updateMedia, deleteMedia, createEpisode, updateEpisode, deleteEpisode, listSegments, createSegment, updateSegment, deleteSegment, createSeries, updateSeries, deleteSeries, addMediaToSeries, updateSeriesMedia, removeMediaFromSeries, createUserReport, listUserReports, getUserPreferences, updateUserPreferences, listUserActivity, deleteUserActivity, getUserActivityHeatmap, getUserActivityStats, exportUserData, listUserLabs, getAdminDashboard, getAdminHealth, type Options } from './sdk.gen';
2
+ export { createNadeshikoClient, type NadeshikoClient, type NadeshikoConfig } from './nadeshiko.gen';
3
3
  export { client } from './client.gen';
4
4
  export * from './internal.gen';
5
5
  export * from './types.gen';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../generated/dev/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,cAAc,EAAE,mBAAmB,EAAE,aAAa,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,WAAW,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,iBAAiB,EAAE,cAAc,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAG5pC,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGlH,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,aAAa,CAAC;AAC5B,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../generated/dev/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,2BAA2B,EAAE,cAAc,EAAE,mBAAmB,EAAE,aAAa,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,WAAW,EAAE,iBAAiB,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,cAAc,EAAE,YAAY,EAAE,iBAAiB,EAAE,cAAc,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAG3tC,OAAO,EAAE,qBAAqB,EAAE,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGpG,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,aAAa,CAAC;AAC5B,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC"}