import { ObjectNode, ArrayNode } from 'khusamov-javascript-generator'; import Namespace from '../Namespace'; import { TStringOrStringArray } from '../../type/TStringOrStringArray'; /** * Имитация базового класса. * @link http://docs.sencha.com/extjs/6.5.3/classic/Ext.Base.html * @link http://docs.sencha.com/extjs/6.5.3/classic/Ext.Class.html */ export default class BaseClass extends ObjectNode { namespace: Namespace | undefined; /** * Родительский класс. * @returns {string | undefined} */ extend: string | undefined; /** * Переопределение класса. * Если определен, то этот класс переопределяет члены указанного целевого класса.. * @returns {string | undefined} */ override: string | undefined; /** * Зависимости класса. * @returns {ArrayNode} */ readonly requires: ArrayNode; /** * Список классов, которые используются в данном классе. * @returns {ArrayNode} */ readonly uses: ArrayNode; /** * Псевдонимы класса. * @returns {TStringOrStringArray | undefined} */ alias: TStringOrStringArray | undefined; /** * Является ли данный класс переопределением другого класса через свойство override или нет. * @returns {boolean} */ readonly isOverride: boolean; /** * Конструктор класса. * Если указаны три аргумента, то аргумент namespaceOrConfig должен быть экземпляром класса Namespace. * @param {string} name * @param {Namespace | any | undefined} namespaceOrConfig * @param {object} config */ constructor(name: string, namespaceOrConfig?: Namespace | any | undefined, config?: object); /** * Специальный метод для переопределения в потомках. * Должен содержать код инициализации класса. * Запускается после выполнения конструктора. */ initClass(): void; } //# sourceMappingURL=BaseClass.d.ts.map