/** * Canonical Resource Invariant Validator * * FHIR R4 defines an identical "Name should be usable as an identifier" * constraint on every canonical / knowledge-artifact resource, under * resource-specific keys (mea-0, cnl-0, csd-0, vsd-0, que-0, …). All * variants test the same thing: `name.exists() implies * name.matches('[A-Z]([A-Za-z0-9_]){0,254}')`. * * This validator applies that rule uniformly. `QuestionnaireValidator` * keeps its own copy of the rule (as `que-0`) because it already owns * the Questionnaire-specific checks, so we skip Questionnaire here. */ import type { ValidationIssue } from '../types'; export declare class CanonicalResourceInvariantValidator { /** * Evaluate the name-as-identifier invariant for any canonical / * knowledge-artifact resource. Returns an empty array for resource * types that don't carry the invariant. */ validate(resource: any): ValidationIssue[]; /** * Resource-specific business rules for SearchParameter. * * Currently enforces: * - `type = 'composite'` requires `component.count() >= 2` * (Java baseline `sp-composite`). */ private validateSearchParameter; } export declare const canonicalResourceInvariantValidator: CanonicalResourceInvariantValidator; //# sourceMappingURL=canonical-resource-invariant-validator.d.ts.map