export { Badge, Service } from '@eventcatalog/sdk'; import { CompassConfig } from './compass.js'; type ServiceOptions = { id?: string; path: string; version?: string; }; type ApiConfig = { cloudId: string; apiToken: string; email: string; baseUrl: string; typeFilter?: string[]; }; type StructuredLink = { url: string; title: string; type: string; icon: string; rawType: string; }; type MarkdownTemplateFn = (config: CompassConfig, dependencies: ResolvedDependency[], links?: StructuredLink[]) => string; type ServiceIdStrategyFn = (config: CompassConfig) => string; type ServiceIdStrategy = 'name' | 'compass-id' | ServiceIdStrategyFn; type GeneratorProps = { services?: ServiceOptions[]; api?: ApiConfig; compassUrl: string; domain?: DomainOption; debug?: boolean; overrideExisting?: boolean; typeFilter?: string[]; nameFilter?: string[]; nameMapping?: Record; markdownTemplate?: MarkdownTemplateFn; format?: 'md' | 'mdx'; serviceIdStrategy?: ServiceIdStrategy; dryRun?: boolean; defaultVersion?: string; badges?: boolean; incremental?: boolean; }; type DomainSpec = { id: string; name: string; version: string; }; type DomainMapping = { from: 'label' | 'customField'; key?: string; mapping: Record; fallback?: DomainSpec | 'skip'; }; type DomainOption = DomainSpec | DomainMapping; type ResolvedDependency = { id: string; name: string; }; export type { ApiConfig, DomainMapping, DomainOption, DomainSpec, GeneratorProps, MarkdownTemplateFn, ResolvedDependency, ServiceIdStrategy, ServiceIdStrategyFn, StructuredLink };