@zerocity/define-ensure@0.2.0Built and signed on GitHub ActionsBuilt and signed on GitHub Actions
Built and signed on GitHub Actions
latest
zerocity/define-ensureWorks with
•JSR Score100%•This package works with Node.js, DenoIt is unknown whether this package works with Cloudflare Workers, Bun, Browsers




Downloads5/wk
•Published2 days ago (0.2.0)
Type-safe runtime assertions with definable error factories and TypeScript narrowing
Type-safe runtime assertions with definable error factories and TypeScript narrowing.
Basic usage
Basic usage
import { ensure } from "@zerocity/define-ensure"; // Returns the value, narrowed by TypeScript const user = ensure(maybeUser, "User is required"); user.name; // ✅ TypeScript knows user is defined
Custom validators with defineEnsure
Custom validators with defineEnsure
import { defineEnsure } from "@zerocity/define-ensure"; class ValidationError extends Error { override name = "ValidationError"; } const [validate, isValidationError] = defineEnsure({ error: ValidationError, }); const email = validate(formData.email, "Email required");
Built and signed on
GitHub Actions
Add Package
deno add jsr:@zerocity/define-ensure
Import symbol
import * as define_ensure from "@zerocity/define-ensure";
Import directly with a jsr specifier
import * as define_ensure from "jsr:@zerocity/define-ensure";
Add Package
pnpm i jsr:@zerocity/define-ensure
pnpm dlx jsr add @zerocity/define-ensure
Import symbol
import * as define_ensure from "@zerocity/define-ensure";
Add Package
yarn add jsr:@zerocity/define-ensure
yarn dlx jsr add @zerocity/define-ensure
Import symbol
import * as define_ensure from "@zerocity/define-ensure";
Add Package
vlt install jsr:@zerocity/define-ensure
Import symbol
import * as define_ensure from "@zerocity/define-ensure";
Add Package
npx jsr add @zerocity/define-ensure
Import symbol
import * as define_ensure from "@zerocity/define-ensure";
Add Package
bunx jsr add @zerocity/define-ensure
Import symbol
import * as define_ensure from "@zerocity/define-ensure";