import { type CanonicalResourceType } from './canonical-reference-definitions'; export type { CanonicalResourceType } from './canonical-reference-definitions'; export interface CanonicalReferenceInfo { canonical: string; baseUrl: string; version?: string; expectedResourceType?: CanonicalResourceType; isValidFormat: boolean; isConformanceResource: boolean; } export interface CanonicalValidationResult { isValid: boolean; severity: 'error' | 'warning' | 'info'; message: string; canonicalInfo?: CanonicalReferenceInfo; details?: any; } export interface CanonicalResolutionResult { found: boolean; resource?: any; errorMessage?: string; source?: 'local' | 'registry' | 'remote'; } export declare class CanonicalReferenceValidator { parseCanonicalUrl(canonical: string): CanonicalReferenceInfo; validateCanonicalUrl(canonical: string, expectedResourceType?: CanonicalResourceType): CanonicalValidationResult; private isValidCanonicalFormat; private isConformanceResourceUrl; extractResourceTypeFromUrl(url: string): CanonicalResourceType | null; validateProfileCanonical(canonical: string): CanonicalValidationResult; validateValueSetCanonical(canonical: string): CanonicalValidationResult; validateCodeSystemCanonical(canonical: string): CanonicalValidationResult; extractCanonicalUrls(resource: any): CanonicalReferenceInfo[]; validateResourceCanonicals(resource: any): CanonicalValidationResult[]; resolveCanonical(canonical: string, resourceFetcher?: (url: string, resourceType?: string) => Promise): Promise; areEquivalent(canonical1: string, canonical2: string): boolean; matchesPattern(canonical: string, pattern: string): boolean; stripVersion(canonical: string): string; withVersion(canonical: string, version: string): string; validateBundleCanonicals(bundle: any): { isValid: boolean; results: CanonicalValidationResult[]; duplicateCanonicals?: Array<{ canonical: string; count: number; entries: number[]; }>; }; getCommonBaseUrls(): Record; detectOrganization(canonical: string): string | null; } export declare function getCanonicalReferenceValidator(): CanonicalReferenceValidator; export declare function resetCanonicalReferenceValidator(): void; //# sourceMappingURL=canonical-reference-validator.d.ts.map