import { CardElement, Action } from "./card-elements"; import { SerializableObject, Version } from "./serialization"; export interface ITypeRegistration { typeName: string; objectType: { new (): T; }; schemaVersion: Version; } export declare class CardObjectRegistry { private _items; findByName(typeName: string): ITypeRegistration | undefined; clear(): void; copyTo(target: CardObjectRegistry): void; register(typeName: string, objectType: { new (): T; }, schemaVersion?: Version): void; unregister(typeName: string): void; createInstance(typeName: string, targetVersion: Version): T | undefined; getItemCount(): number; getItemAt(index: number): ITypeRegistration; } export declare class GlobalRegistry { private static _elements?; private static _actions?; static populateWithDefaultElements(registry: CardObjectRegistry): void; static populateWithDefaultActions(registry: CardObjectRegistry): void; static readonly defaultElements: CardObjectRegistry; static readonly defaultActions: CardObjectRegistry; static get elements(): CardObjectRegistry; static get actions(): CardObjectRegistry; static reset(): void; }