/**
 * Auto-generated exports from api-model-kinds_generated.ts
 *
 * This file is automatically generated by sync-exports.js
 * Do not edit manually - run 'npm run sync-exports' to regenerate
 *
 * Generated on: 2026-01-05T16:59:36.632Z
 */

import { components } from './api-model-kinds_generated.js';
import {components as nanocomponents} from '@apic/smith-inventory';

// Export individual schema types
export type AWSLambda = components['schemas']['AWSLambda'];
export type Authenticate = components['schemas']['Authenticate'];
export type Authorize = components['schemas']['Authorize'];
export type ExtractIdentity = components['schemas']['ExtractIdentity'];
export type HandlebarsTemplate = components['schemas']['HandlebarsTemplate'];
export type IAM = components['schemas']['IAM'];
export type IBMCloudLogin = components['schemas']['IBMCloudLogin'];
export type InvokeAzureOpenAiChatCompletions = components['schemas']['InvokeAzureOpenAiChatCompletions'];
export type InvokeAzureOpenAiEmbeddings = components['schemas']['InvokeAzureOpenAiEmbeddings'];
export type InvokeAzureOpenAiModels = components['schemas']['InvokeAzureOpenAiModels'];
export type InvokeAzureOpenAiModelsId = components['schemas']['InvokeAzureOpenAiModelsId'];
export type InvokeGeminiBatchEmbedContents = components['schemas']['InvokeGeminiBatchEmbedContents'];
export type InvokeGeminiCountTokens = components['schemas']['InvokeGeminiCountTokens'];
export type InvokeGeminiEmbedContent = components['schemas']['InvokeGeminiEmbedContent'];
export type InvokeGeminiGenerateContent = components['schemas']['InvokeGeminiGenerateContent'];
export type InvokeGeminiModels = components['schemas']['InvokeGeminiModels'];
export type InvokeGeminiModelsId = components['schemas']['InvokeGeminiModelsId'];
export type InvokeOpenAiChatCompletions = components['schemas']['InvokeOpenAiChatCompletions'];
export type InvokeOpenAiEmbeddings = components['schemas']['InvokeOpenAiEmbeddings'];
export type InvokeOpenAiModels = components['schemas']['InvokeOpenAiModels'];
export type InvokeOpenAiModelsId = components['schemas']['InvokeOpenAiModelsId'];
export type InvokeWatsonxModels = components['schemas']['InvokeWatsonxModels'];
export type InvokeWatsonxTextGen = components['schemas']['InvokeWatsonxTextGen'];
export type InvokeWatsonxTokenize = components['schemas']['InvokeWatsonxTokenize'];
export type OpenAIInvoke = components['schemas']['OpenAIInvoke'];
export type RateLimit = components['schemas']['RateLimit'];
export type RateLimitDefinition = components['schemas']['RateLimitDefinition'];
export type Retry = components['schemas']['Retry'];
export type Return = components['schemas']['Return'];
export type SetAuthorization = components['schemas']['SetAuthorization'];
export type Telemetry = components['schemas']['Telemetry'];
export type Throw = components['schemas']['Throw'];
export type WatsonXAIInvoke = components['schemas']['WatsonXAIInvoke'];

// Export a convenience object that contains all schemas
export const Schemas = {
  AWSLambda: {} as AWSLambda,
  Authenticate: {} as Authenticate,
  Authorize: {} as Authorize,
  ExtractIdentity: {} as ExtractIdentity,
  HandlebarsTemplate: {} as HandlebarsTemplate,
  IAM: {} as IAM,
  IBMCloudLogin: {} as IBMCloudLogin,
  InvokeAzureOpenAiChatCompletions: {} as InvokeAzureOpenAiChatCompletions,
  InvokeAzureOpenAiEmbeddings: {} as InvokeAzureOpenAiEmbeddings,
  InvokeAzureOpenAiModels: {} as InvokeAzureOpenAiModels,
  InvokeAzureOpenAiModelsId: {} as InvokeAzureOpenAiModelsId,
  InvokeGeminiBatchEmbedContents: {} as InvokeGeminiBatchEmbedContents,
  InvokeGeminiCountTokens: {} as InvokeGeminiCountTokens,
  InvokeGeminiEmbedContent: {} as InvokeGeminiEmbedContent,
  InvokeGeminiGenerateContent: {} as InvokeGeminiGenerateContent,
  InvokeGeminiModels: {} as InvokeGeminiModels,
  InvokeGeminiModelsId: {} as InvokeGeminiModelsId,
  InvokeOpenAiChatCompletions: {} as InvokeOpenAiChatCompletions,
  InvokeOpenAiEmbeddings: {} as InvokeOpenAiEmbeddings,
  InvokeOpenAiModels: {} as InvokeOpenAiModels,
  InvokeOpenAiModelsId: {} as InvokeOpenAiModelsId,
  InvokeWatsonxModels: {} as InvokeWatsonxModels,
  InvokeWatsonxTextGen: {} as InvokeWatsonxTextGen,
  InvokeWatsonxTokenize: {} as InvokeWatsonxTokenize,
  OpenAIInvoke: {} as OpenAIInvoke,
  RateLimit: {} as RateLimit,
  RateLimitDefinition: {} as RateLimitDefinition,
  Retry: {} as Retry,
  Return: {} as Return,
  SetAuthorization: {} as SetAuthorization,
  Telemetry: {} as Telemetry,
  Throw: {} as Throw,
  WatsonXAIInvoke: {} as WatsonXAIInvoke,
};


// Export types from @apic/smith-inventory (excluding duplicates with local schemas)
export type Antivirus = nanocomponents['schemas']['Antivirus'];
export type Api = nanocomponents['schemas']['Api'];
export type Block = nanocomponents['schemas']['Block'];
export type CORS = nanocomponents['schemas']['CORS'];
export type Cache = nanocomponents['schemas']['Cache'];
export type CountLimit = nanocomponents['schemas']['CountLimit'];
export type CountLimitDef = nanocomponents['schemas']['CountLimitDef'];
export type DataPowerAssembly = nanocomponents['schemas']['DataPowerAssembly'];
export type EnforceCircuitBreaker = nanocomponents['schemas']['EnforceCircuitBreaker'];
export type FreeFlowPolicySequence = nanocomponents['schemas']['FreeFlowPolicySequence'];
export type GlobalPolicy = nanocomponents['schemas']['GlobalPolicy'];
export type HTTPEndpoint = nanocomponents['schemas']['HTTPEndpoint'];
export type If = nanocomponents['schemas']['If'];
export type Invoke = nanocomponents['schemas']['Invoke'];
export type JavaScript = nanocomponents['schemas']['JavaScript'];
export type LoadBalancer = nanocomponents['schemas']['LoadBalancer'];
export type LuaScript = nanocomponents['schemas']['LuaScript'];
export type MCPServerConfig = nanocomponents['schemas']['MCPServerConfig'];
export type MCPTool = nanocomponents['schemas']['MCPTool'];
export type MockEndpoint = nanocomponents['schemas']['MockEndpoint'];
export type MockResponse = nanocomponents['schemas']['MockResponse'];
export type OperationSwitch = nanocomponents['schemas']['OperationSwitch'];
export type Parse = nanocomponents['schemas']['Parse'];
export type Plan = nanocomponents['schemas']['Plan'];
export type Product = nanocomponents['schemas']['Product'];
export type Project = nanocomponents['schemas']['Project'];
export type Properties = nanocomponents['schemas']['Properties'];
export type Quota = nanocomponents['schemas']['Quota'];
export type Redact = nanocomponents['schemas']['Redact'];
export type Remove = nanocomponents['schemas']['Remove'];
export type Route = nanocomponents['schemas']['Route'];
export type SQLInjectionFilter = nanocomponents['schemas']['SQLInjectionFilter'];
export type Scope = nanocomponents['schemas']['Scope'];
export type ServiceResultCache = nanocomponents['schemas']['ServiceResultCache'];
export type Set = nanocomponents['schemas']['Set'];
export type StagedPolicySequence = nanocomponents['schemas']['StagedPolicySequence'];
export type Switch = nanocomponents['schemas']['Switch'];
export type TokenMediation = nanocomponents['schemas']['TokenMediation'];
export type Transform = nanocomponents['schemas']['Transform'];
export type Try = nanocomponents['schemas']['Try'];
export type UriSchemes = nanocomponents['schemas']['UriSchemes'];
export type ValidateAPISpecification = nanocomponents['schemas']['ValidateAPISpecification'];
export type assertion = nanocomponents['schemas']['assertion'];
export type environment = nanocomponents['schemas']['environment'];
export type test = nanocomponents['schemas']['test'];
