import { BrsComponent } from "./BrsComponent"; declare class BrsObjectsMap { private readonly map; constructor(entries: [string, Function, number?][]); get(key: string): Function | undefined; set(key: string, value: Function, params?: number): Map; has(key: string): boolean; delete(key: string): boolean; clear(): void; values(): Function[]; keys(): string[]; params(key: string): number; } /** Map containing a list of BrightScript components that can be created. */ export declare const BrsObjects: BrsObjectsMap; /** * Lets another software using BRS as a library to add/overwrite an implementation of a BrsObject. * * This is useful, for example, if another piece of software wanted to implement video playback or Draw2d functionality. * * In each element of the objectList param, it is pair: * [name of the BrsObject (e.g. "roScreen", etc.), function (interpreter, ...additionalArgs) that returns a new object] * * @example * * extendBrsObjects([ * ["roScreen", (_interpreter) => {return new roScreen();}] * ]) * * @param objectList array of pairs: [name, constructor function] */ export declare function extendBrsObjects(objectList: [string, () => BrsComponent][]): void; export {};