export type ProductApiArea = 'revenue' | 'communications' | 'energy' | 'public-sector' | 'marketing' | 'industries'; export type ProductApiContractKind = 'resource' | 'request-body' | 'response-body' | 'method' | 'class' | 'property' | 'setting'; export type ProductApiChange = 'additive' | 'breaking'; export type ProductApiLifecycle = 'unknown' | 'preview' | 'generally-available'; export type ProductApiSource = { articleId: string; locator: string; retrievedAt: string; bodyHash: `sha256:${string}`; contentId: string; lifecycle: ProductApiLifecycle; }; export type ProductApiContract = { area: ProductApiArea; symbol: string; kind: ProductApiContractKind; change: ProductApiChange; version: '264.0' | 'v68.0' | 'package-managed'; lifecycle: ProductApiLifecycle; profileTargets: string[]; source: ProductApiSource; notes?: string; }; export type ProductApiGap = { area: ProductApiArea; aggregate: string; reason: 'source-does-not-name-contract'; profileTargets: string[]; source: ProductApiSource; }; export declare const RELEASE_264_PRODUCT_API_CONTRACTS: readonly ProductApiContract[]; export declare const RELEASE_264_PRODUCT_API_GAPS: readonly ProductApiGap[]; export declare function contractsForProfile(profileId: string): readonly ProductApiContract[]; export declare function gapsForProfile(profileId: string): readonly ProductApiGap[]; export declare function renderRelease264ApiContracts(profileId: string): string[]; export declare function validateRelease264ApiCatalog(): string[];