import { CamelPropertyCommon } from './camel-properties-common'; import { CatalogKind } from './catalog-kind'; import { KaotoSchemaDefinition } from './kaoto-schema'; export interface ICamelComponentDefinition { component: ICamelComponent; componentProperties: Record; properties: Record; propertiesSchema: KaotoSchemaDefinition['schema']; headers?: Record; apis?: Record; apiProperties?: Record; } export interface ICamelComponent { kind: CatalogKind.Component; name: string; title: string; description?: string; deprecated: boolean; firstVersion?: string; label: string; javaType?: string; supportLevel?: string; groupId?: string; artifactId?: string; version: string; scheme?: string; extendsScheme?: string; syntax?: string; async?: boolean; api?: boolean; consumerOnly?: boolean; producerOnly?: boolean; lenientProperties?: boolean; } export interface ICamelComponentProperty extends CamelPropertyCommon { group: string; type: string; } export interface ICamelComponentHeader extends CamelPropertyCommon { group: string; constantName: string; } export interface ICamelComponentApi { consumerOnly: boolean; producerOnly: boolean; description: string; methods: Record; } export interface ICamelComponentApiMethod { description: string; signatures: string[]; } export interface ICamelComponentApiProperty { methods: Record; } export interface ICamelComponentApiPropertyMethod { properties: Record; } export declare enum ICamelComponentApiKind { API = "Api", METHOD = "Method", PARAM = "Param" }