Skip to main content

new Fhiron(options?)

OpciónTipoDefaultDescripción
apiKeystringprocess.env.FHIRON_API_KEYAPI key del tenant.
baseUrlstringhttps://fhiron.cl (o FHIRON_API_URL)Base de la API.
timeoutnumber10000Timeout por petición (ms).
clCoreVersionstringresuelto por el tenantFija la versión de CL Core, ej. "1.9.4".
languagestring"es"Idioma de los mensajes ("es" | "en").

Métodos

validate(resource, opts?): Promise<ValidateResult>

Validación remota contra CL Core. Descuenta cuota. opts: { profile?, clCoreVersion?, timeout? }. Ver validate.

lint(resource): Issue[]

Lint estructural offline, síncrono. No descuenta cuota. Ver lint.

check(resource, opts?): Promise<ValidateResult & { localIssues: Issue[] }>

Lint local más validación remota en un llamado.

ValidateResult

interface ValidateResult {
  valid: boolean;
  ok: boolean;
  engineDegraded: boolean;
  resourceType: string | null;
  profile: string | null;
  issues: Issue[];
  errors: Issue[];
  warnings: Issue[];
  information: Issue[];
  messages: { errors: string[]; warnings: string[] };
  raw: Record<string, unknown>;
}

Issue

interface Issue {
  code: string;          // identificador estable, ej. "cl-run-01"
  severity: 'error' | 'warning' | 'information' | 'info';
  path: string;          // ruta FHIR (Patient.identifier[0].value)
  message: string;       // en español
  why?: string;          // por qué es un problema
  profileUrl?: string;   // StructureDefinition / CodeSystem que falla
  docsUrl?: string;
  suggestion?: string;
  quickFix?: { title: string; jsonPointer: string; replacement: unknown };
}

Errores

FhironError y subclases (FhironAuthError, FhironQuotaError, FhironRequestError, FhironServerError, FhironTimeoutError, FhironNetworkError). Ver errores.

Funciones y constantes

ExportDescripción
versionFromProfile(profile)"hl7.fhir.cl.clcore@1.9.4""1.9.4"; otros → null.
VERSIONVersión del SDK instalado.

Exports

import {
  Fhiron,
  // tipos
  ValidateResult, Issue, QuickFix, Severity, FhironOptions, ValidateOptions,
  // errores
  FhironError, FhironAuthError, FhironQuotaError,
  FhironRequestError, FhironServerError, FhironTimeoutError, FhironNetworkError,
  // utilidades
  versionFromProfile, VERSION,
} from '@fhiron/sdk';
CommonJS:
const { Fhiron, FhironQuotaError, versionFromProfile } = require('@fhiron/sdk');