Skip to content

bind-standard/bind-typescript-sdk

Repository files navigation

BIND TypeScript SDK

TypeScript SDK for the BIND Standard — the open data model for insurance interoperability.

Includes all BIND resource types and a typed client for the BIND Terminology Server.

Install

npm install @bind-standard /sdk

Types

Every BIND resource type is exported as a TypeScript interface:

import type { Policy, Claim, Coverage, Submission, Quote } from "@bind-standard /sdk";
import type { Insured, Organization, Person, PersonRole } from "@bind-standard /sdk";
import type { Location, Risk, RiskCharacteristic } from "@bind-standard /sdk";

Base data types are also available:

import type {
  Address,
  Money,
  CodeableConcept,
  Reference,
  Period,
  Coding,
} from "@bind-standard /sdk";

You can also import from the types subpath if you only need the types:

import type { Policy } from "@bind-standard /sdk/types";

Terminology Client

A zero-dependency, typed HTTP client for the BIND Terminology Server (280+ insurance code systems):

import { TerminologyClient } from "@bind-standard /sdk";

const client = new TerminologyClient();

// List all code systems
const systems = await client.list();

// Get a full code system
const roofTypes = await client.get("roof-type");

// Look up a single concept
const metal = await client.lookup("roof-type", "metal");

// Search across all code systems
const results = await client.search("shingle");

// Localized display values
const french = await client.get("construction-type", { lang: "fr-CA" });

You can also import from the terminology subpath:

import { TerminologyClient } from "@bind-standard /sdk/terminology";
import type { CodeSystem, LookupResult } from "@bind-standard /sdk/terminology";

Custom Base URL

Point the client at a different server instance:

const client = new TerminologyClient({ baseUrl: "http://localhost:8787" });

Syncing Types from bind-standard

The canonical type definitions live in bind-standard. To sync updated types into this SDK:

pnpm run sync:types

This copies the type files from a sibling bind-standard directory. Pass a custom path with:

pnpm run sync:types -- --standard-path /path/to/bind-standard

Development

pnpm install
pnpm run typecheck    # TypeScript type checking
pnpm run check        # Biome lint + format check
pnpm run build        # Compile to dist/

CI/CD

  • CI — Runs typecheck, lint, and build on every push and pull request.
  • Publish — Publishes to npm on GitHub release. Requires an NPM_TOKEN secret.

Contributing

We welcome contributions from everyone. See CONTRIBUTING.md for details, or open a pull request directly.

For questions or ideas, reach out at contact@bind-standard.org.

License

Released under the CC0 1.0 Universal license — dedicated to the public domain. You are free to use, modify, and build upon it without restriction.

About

No description, website, or topics provided.

Resources

License

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors