UNPKG

@promptbook/langtail

Version:

It's time for a paradigm shift. The future of software in plain English, French or Latin

40 lines (39 loc) 995 B
import { type IDestroyable } from 'destroyable'; import type { string_name } from '../types/typeAliases'; import type { TODO_string } from './organization/TODO_string'; /** * @@@ */ export type Registered = { /** * @@@ */ readonly packageName: TODO_string; /** * @@@ */ readonly className: TODO_string; }; /** * @@@ */ export type Registration = Registered & IDestroyable & { /** * @@@ */ readonly registerName: string_name; }; /** * Register is @@@ * * Note: `$` is used to indicate that this function is not a pure function - it accesses and adds variables in global scope. * * @private internal utility, exported are only signleton instances of this class */ export declare class $Register<TRegistered extends Registered> { private readonly registerName; private readonly storage; constructor(registerName: string_name); list(): ReadonlyArray<TRegistered>; register(registered: TRegistered): Registration; }