UNPKG

@final-hill/decorator-contracts

Version:

Code Contracts for TypeScript and ECMAScript classes

18 lines (17 loc) 833 B
import { InvariantPredicate } from './invariant.mjs'; import { DemandsPredicate } from './demands.mjs'; import { EnsuresPredicate } from './ensures.mjs'; import { RescueHandler } from './rescue.mjs'; export declare const checkedMode: unique symbol; export declare class Contracted { static [Symbol.metadata]: { invariants: InvariantPredicate<typeof Contracted>[]; demands: Record<PropertyKey, DemandsPredicate<Contracted>[]>; ensures: Record<PropertyKey, EnsuresPredicate<Contracted>[]>; rescue: Record<PropertyKey, RescueHandler<Contracted>>; }; protected static _allowConstruction: boolean; static [checkedMode]: boolean; static new<C extends typeof Contracted, Args extends ConstructorParameters<C>>(this: C, ...args: Args): InstanceType<C>; constructor(..._args: any[]); }