import type { ValidationIssue } from '../types'; import type { ElementDefinition, StructureDefinition } from '../core/structure-definition-types'; import { StructureDefinitionLoader } from '../core/structure-definition-loader'; import { TypeValidator } from './type-validator'; import { ValueSetValidator } from './valueset-validator'; import { ElementRulesValidator } from './element-rules-validator'; import type { ExtensionDefinition, ExtensionValidationContext } from './extension-types'; interface ValidateExtensionProfileParams { extension: any; profileUrl: string; path: string; context: ExtensionValidationContext; sdLoader: StructureDefinitionLoader; typeValidator: TypeValidator; valueSetValidator: ValueSetValidator; elementRulesValidator: ElementRulesValidator; profileCache: Map; } export declare function getSubExtensionDefinitions(parentProfileUrl: string, fhirVersion: 'R4' | 'R5' | 'R6', sdLoader: StructureDefinitionLoader, cache: Map>): Promise>; export declare function validateAgainstExtensionProfile({ extension, profileUrl, path, context, sdLoader, typeValidator, valueSetValidator, elementRulesValidator, profileCache, }: ValidateExtensionProfileParams): Promise; export declare function validateExtensionValueElements({ extension, valueElements, path, profileUrl, context, typeValidator, valueSetValidator, elementRulesValidator, }: { extension: any; valueElements: ElementDefinition[]; path: string; profileUrl: string; context: ExtensionValidationContext; typeValidator: TypeValidator; valueSetValidator: ValueSetValidator; elementRulesValidator: ElementRulesValidator; }): Promise; export {}; //# sourceMappingURL=extension-profile-validation.d.ts.map