import { VersionStrategy } from './utils/version'; import { Gav } from 'anypoint-project-builder'; export type Contact = { readonly name: string; readonly email: string; }; export type DocumentationReference = { readonly name: string; readonly filePath: string; }; export type Categories = { readonly [key: string]: ReadonlyArray; }; export type Conditions = { readonly [key: string]: ReadonlyArray; }; export type VersionStrategyConditions = { readonly [key in VersionStrategy]: Conditions | undefined; }; export type CustomFields = { readonly [key: string]: ReadonlyArray; }; export type ProjectReference = ProjectMetadata & { readonly versionStrategy?: VersionStrategy; readonly triggerConditions?: Conditions; readonly versionStrategyConditions?: VersionStrategyConditions; }; export type ProjectMetadata = { readonly main: string; readonly name: string; readonly documentation?: ReadonlyArray; readonly assetId: string; readonly contact?: Contact; readonly tags?: ReadonlyArray; readonly categories?: Categories; readonly customFields?: CustomFields; readonly apiVersion?: string; readonly version?: string; readonly classifier?: string; }; export type ProjectDescriptor = { main: string; name: string; assetId?: string; apiVersion?: string; documentation?: ReadonlyArray; tags?: ReadonlyArray; categories?: Categories; customFields?: CustomFields; classifier?: string; version?: string; groupId?: string; }; export type CatalogDescriptor = { readonly contact?: Contact; readonly triggerConditions?: Conditions; readonly versionStrategyConditions?: VersionStrategyConditions; readonly projects: ReadonlyArray; }; export type ApiSpecAsset = { path: string; classifier: string; title?: string; version?: string; contact?: Contact; tags?: ReadonlyArray; }; export type DependencyAsset = { name: string; path: string; absolutePath: string; }; export type ApiSpecAssetResult = { asset: ApiSpecAsset; dependencies: DependencyAsset[]; }; export type LocalAsset = { scope: string; location: string; gav?: Gav; id?: string; }; export type ApiProjectDependencies = { remoteAssets: Array; localAssets: Array; centralizedRulesetsFlags: CentralizedRulesetsFlags; }; export type CentralizedRulesetsFlags = { areCentralizedRulesets: boolean; location: string; customRamlTag: string | undefined; projectDescriptor: any; }; import { CLIError } from '@oclif/core/lib/errors'; export declare class APIProjectError extends CLIError { code: string; details?: string[]; constructor({ message, details, code, exitCode }: { code: string; message: string; details?: string[]; exitCode?: number; }); } export declare class ApiSpecificationError extends APIProjectError { constructor(message: string); }