@contractspec/lib.utils-typescript
v3.7.22
Published
TypeScript utility types and helpers
Maintainers
Readme
@contractspec/lib.utils-typescript
Website: https://contractspec.io
TypeScript utility types and helpers.
What It Provides
- Layer: lib.
- Consumers: many libs and bundles (wide blast radius).
- Related ContractSpec packages include
@contractspec/tool.bun,@contractspec/tool.typescript. - Related ContractSpec packages include
@contractspec/tool.bun,@contractspec/tool.typescript.
Installation
npm install @contractspec/lib.utils-typescript
or
bun add @contractspec/lib.utils-typescript
Usage
Import the root entrypoint from @contractspec/lib.utils-typescript, or choose a documented subpath when you only need one part of the package surface.
Architecture
src/index.tsis the root public barrel and package entrypoint.src/lib/contains package-local helper utilities and adapters.src/staticShouldNotHappen.tsis part of the package's public or composition surface.
Public Entry Points
- Export
.resolves through./src/index.ts. - Export
./lib/AwaitedResultresolves through./src/lib/AwaitedResult.ts. - Export
./lib/BrowserNativeObjectresolves through./src/lib/BrowserNativeObject.ts. - Export
./lib/DeepInfiniteArrayresolves through./src/lib/DeepInfiniteArray.ts. - Export
./lib/DeepKeepOnlyresolves through./src/lib/DeepKeepOnly.ts. - Export
./lib/DeepKeyresolves through./src/lib/DeepKey.ts. - Export
./lib/DeepMapresolves through./src/lib/DeepMap.ts. - Export
./lib/DeepNullableresolves through./src/lib/DeepNullable.ts. - Export
./lib/DeepOrresolves through./src/lib/DeepOr.ts. - Export
./lib/DeepPartialresolves through./src/lib/DeepPartial.ts. - The package publishes 31 total export subpaths; keep docs aligned with
package.json.
Local Commands
bun run dev— contractspec-bun-build devbun run build— bun run prebuild && bun run build:bundle && bun run build:typesbun run lint— bun run lint:fixbun run lint:check— biome check .bun run lint:fix— biome check --write --unsafe --only=nursery/useSortedClasses . && biome check --write .bun run typecheck— tsc --noEmitbun run publish:pkg— bun publish --tolerate-republish --ignore-scripts --verbosebun run publish:pkg:canary— bun publish:pkg --tag canarybun run clean— rm -rf distbun run build:bundle— contractspec-bun-build transpilebun run build:types— contractspec-bun-build typesbun run prebuild— contractspec-bun-build prebuild
Recent Updates
- Replace eslint+prettier by biomejs to optimize speed.
Notes
- Utility types are used across the entire monorepo — changes can break many packages.
- Must stay zero-dependency (no runtime deps).
- Test any signature change against downstream consumers before merging.
