@appliedblockchain/assert-combinators
Advanced tools
Comparing version 5.4.1 to 5.5.0
# Changelog | ||
## [v5.5.0](../../compare/v5.4.1...v5.5.0) (2022-12-14) | ||
* Chore: bumping ts. | ||
* Updating changelog. | ||
## [v5.4.1](../../compare/v5.4.0...v5.4.1) (2022-09-21) | ||
@@ -4,0 +9,0 @@ |
import type { Assert } from './prelude.js'; | ||
declare type $<T> = Assert<T>; | ||
declare type And = { | ||
type $<T> = Assert<T>; | ||
type And = { | ||
<A>(a: $<A>): $<A>; | ||
@@ -5,0 +5,0 @@ <A, B>(a: $<A>, b: $<B>): $<A & B>; |
import type { Assert } from './prelude.js'; | ||
declare type Predicate<T> = (value: T) => boolean; | ||
type Predicate<T> = (value: T) => boolean; | ||
declare const if_: <T, A, B>(predicate: Predicate<T>, then_: Assert<A>, else_: Assert<B>) => (value: T) => A | B; | ||
export default if_; |
import type { Predicate } from './prelude.js'; | ||
declare type Identity<T> = (value: T) => T; | ||
type Identity<T> = (value: T) => T; | ||
declare const predicate: (f: Predicate<unknown>, name?: string) => Identity<unknown>; | ||
export default predicate; |
/** Helper no-op, parametric type to expand intellisense for alias types. */ | ||
export declare type Alias<T> = T extends infer U ? { | ||
export type Alias<T> = T extends infer U ? { | ||
[K in keyof U]: U[K]; | ||
} : never; | ||
export declare type Assert<R> = (value: unknown) => R; | ||
export declare type Asserted<A> = A extends (value: unknown) => infer U ? U : never; | ||
export declare type Awaited<T> = T extends PromiseLike<infer U> ? Awaited<U> : T; | ||
export declare type Keyed<T = unknown> = Record<string, T | undefined>; | ||
export type Assert<R> = (value: unknown) => R; | ||
export type Asserted<A> = A extends (value: unknown) => infer U ? U : never; | ||
export type Awaited<T> = T extends PromiseLike<infer U> ? Awaited<U> : T; | ||
export type Keyed<T = unknown> = Record<string, T | undefined>; | ||
/** @deprecated use {@link Nullish} */ | ||
export declare type NilOr<T> = undefined | null | T; | ||
export declare type Nullish<T> = undefined | null | T; | ||
export declare type UndefinedOr<T> = undefined | T; | ||
export declare type Nullable<T> = null | T; | ||
export declare type Defined<T> = Exclude<T, undefined>; | ||
export declare type NonNullish<T> = Exclude<T, undefined | null>; | ||
export declare type Predicate<T = unknown> = (value: T) => boolean; | ||
export declare type Primitive = undefined | null | boolean | number | string | symbol; | ||
export declare type Exact<T, I> = T extends I ? Exclude<keyof T, keyof I> extends never ? T : never : never; | ||
export type NilOr<T> = undefined | null | T; | ||
export type Nullish<T> = undefined | null | T; | ||
export type UndefinedOr<T> = undefined | T; | ||
export type Nullable<T> = null | T; | ||
export type Defined<T> = Exclude<T, undefined>; | ||
export type NonNullish<T> = Exclude<T, undefined | null>; | ||
export type Predicate<T = unknown> = (value: T) => boolean; | ||
export type Primitive = undefined | boolean | number | string | symbol | bigint; | ||
export type Exact<T, I> = T extends I ? Exclude<keyof T, keyof I> extends never ? T : never : never; |
import type { Assert } from './prelude.js'; | ||
declare type $<A, B> = (a: A) => B; | ||
declare type Sequence = { | ||
type $<A, B> = (a: A) => B; | ||
type Sequence = { | ||
<A>(a: Assert<A>): Assert<A>; | ||
@@ -5,0 +5,0 @@ <A, B>(a: Assert<A>, b: $<A, B>): Assert<B>; |
import type { Assert, Primitive } from './prelude.js'; | ||
declare type Mapping<A, B extends Primitive> = (value: A) => B; | ||
type Mapping<A, B extends Primitive> = (value: A) => B; | ||
/** Asserts unique array using given `f` mapping from array elements to `===` comparable values (defaults to identity). */ | ||
declare const unique: <T, R extends Primitive>(f: Mapping<T, R>) => Assert<T[]>; | ||
export default unique; |
import type { Assert } from './prelude.js'; | ||
declare type $<T> = Assert<T>; | ||
declare type And = { | ||
type $<T> = Assert<T>; | ||
type And = { | ||
<A>(a: $<A>): $<A>; | ||
@@ -5,0 +5,0 @@ <A, B>(a: $<A>, b: $<B>): $<A & B>; |
import type { Assert } from './prelude.js'; | ||
declare type Predicate<T> = (value: T) => boolean; | ||
type Predicate<T> = (value: T) => boolean; | ||
declare const if_: <T, A, B>(predicate: Predicate<T>, then_: Assert<A>, else_: Assert<B>) => (value: T) => A | B; | ||
export default if_; |
import type { Predicate } from './prelude.js'; | ||
declare type Identity<T> = (value: T) => T; | ||
type Identity<T> = (value: T) => T; | ||
declare const predicate: (f: Predicate<unknown>, name?: string) => Identity<unknown>; | ||
export default predicate; |
/** Helper no-op, parametric type to expand intellisense for alias types. */ | ||
export declare type Alias<T> = T extends infer U ? { | ||
export type Alias<T> = T extends infer U ? { | ||
[K in keyof U]: U[K]; | ||
} : never; | ||
export declare type Assert<R> = (value: unknown) => R; | ||
export declare type Asserted<A> = A extends (value: unknown) => infer U ? U : never; | ||
export declare type Awaited<T> = T extends PromiseLike<infer U> ? Awaited<U> : T; | ||
export declare type Keyed<T = unknown> = Record<string, T | undefined>; | ||
export type Assert<R> = (value: unknown) => R; | ||
export type Asserted<A> = A extends (value: unknown) => infer U ? U : never; | ||
export type Awaited<T> = T extends PromiseLike<infer U> ? Awaited<U> : T; | ||
export type Keyed<T = unknown> = Record<string, T | undefined>; | ||
/** @deprecated use {@link Nullish} */ | ||
export declare type NilOr<T> = undefined | null | T; | ||
export declare type Nullish<T> = undefined | null | T; | ||
export declare type UndefinedOr<T> = undefined | T; | ||
export declare type Nullable<T> = null | T; | ||
export declare type Defined<T> = Exclude<T, undefined>; | ||
export declare type NonNullish<T> = Exclude<T, undefined | null>; | ||
export declare type Predicate<T = unknown> = (value: T) => boolean; | ||
export declare type Primitive = undefined | null | boolean | number | string | symbol; | ||
export declare type Exact<T, I> = T extends I ? Exclude<keyof T, keyof I> extends never ? T : never : never; | ||
export type NilOr<T> = undefined | null | T; | ||
export type Nullish<T> = undefined | null | T; | ||
export type UndefinedOr<T> = undefined | T; | ||
export type Nullable<T> = null | T; | ||
export type Defined<T> = Exclude<T, undefined>; | ||
export type NonNullish<T> = Exclude<T, undefined | null>; | ||
export type Predicate<T = unknown> = (value: T) => boolean; | ||
export type Primitive = undefined | boolean | number | string | symbol | bigint; | ||
export type Exact<T, I> = T extends I ? Exclude<keyof T, keyof I> extends never ? T : never : never; |
import type { Assert } from './prelude.js'; | ||
declare type $<A, B> = (a: A) => B; | ||
declare type Sequence = { | ||
type $<A, B> = (a: A) => B; | ||
type Sequence = { | ||
<A>(a: Assert<A>): Assert<A>; | ||
@@ -5,0 +5,0 @@ <A, B>(a: Assert<A>, b: $<A, B>): Assert<B>; |
import type { Assert, Primitive } from './prelude.js'; | ||
declare type Mapping<A, B extends Primitive> = (value: A) => B; | ||
type Mapping<A, B extends Primitive> = (value: A) => B; | ||
/** Asserts unique array using given `f` mapping from array elements to `===` comparable values (defaults to identity). */ | ||
declare const unique: <T, R extends Primitive>(f: Mapping<T, R>) => Assert<T[]>; | ||
export default unique; |
{ | ||
"name": "@appliedblockchain/assert-combinators", | ||
"version": "5.4.1", | ||
"version": "5.5.0", | ||
"description": "Assertion combinators.", | ||
@@ -33,11 +33,11 @@ "type": "module", | ||
"@tsconfig/node16": "1.0.3", | ||
"@types/jest": "29.0.3", | ||
"@typescript-eslint/eslint-plugin": "5.38.0", | ||
"@typescript-eslint/parser": "5.38.0", | ||
"eslint": "8.23.1", | ||
"eslint-plugin-jest": "27.0.4", | ||
"jest": "29.0.3", | ||
"@types/jest": "29.2.4", | ||
"@typescript-eslint/eslint-plugin": "5.46.1", | ||
"@typescript-eslint/parser": "5.46.1", | ||
"eslint": "8.29.0", | ||
"eslint-plugin-jest": "27.1.6", | ||
"jest": "29.3.1", | ||
"npm-check": "6.0.1", | ||
"typescript": "4.8.3" | ||
"typescript": "4.9.4" | ||
} | ||
} |
@@ -53,3 +53,3 @@ /** Helper no-op, parametric type to expand intellisense for alias types. */ | ||
| undefined | ||
| null | ||
// | null // @todo: ts 4.9 doesn't like it | ||
| boolean | ||
@@ -59,2 +59,3 @@ | number | ||
| symbol | ||
| bigint | ||
@@ -61,0 +62,0 @@ export type Exact<T, I> = |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
3045
181783