import { Assertion, UnaryOperator, BinaryOperator, Result, ContractFunction } from './model'; /** * @author Maciej Chałapuk (maciej@chalapuk.pl) */ export declare class Registry { static readonly instance: Registry; contextProto: { assertions: {}; operators: {}; connectors: {}; }; private traces; private entities; constructor(); addAssertion(assertions: HashMap): this; addAssertionFactory(factories: HashMap): this; addUnaryOperator(operators: HashMap): this; addBinaryOperator(operators: HashMap): this; addConnectors(connectors: HashMap): this; private filterAlreadyRegistered; private extendPrototype; } export default Registry; /** * @author Maciej Chałapuk (maciej@chalapuk.pl) */ export interface AssertionLike { assert(varName: string, testedValue: any, contract: ContractFunction): Result; } /** * @author Maciej Chałapuk (maciej@chalapuk.pl) */ export interface HashMap { [_: string]: T | undefined; }