@ribajs/core
Version:
Core module of Riba.js
44 lines (43 loc) • 2.47 kB
TypeScript
import "@ribajs/types";
import { EventHandler, ObservedAttributesToCheck, TemplateFunction, ObserverSyncCallback } from "../types/index.js";
import type { JsxElement } from "@ribajs/jsx";
import { Observer } from "../observer.js";
export declare abstract class BasicComponent extends HTMLElement {
static tagName: string;
_debug: boolean;
_color?: string;
protected templateLoaded: boolean;
protected observedAttributesToCheck: ObservedAttributesToCheck;
protected observedAttributes: string[];
abstract scope: any;
constructor();
remove(): void;
protected abstract template(): ReturnType<TemplateFunction>;
protected _log(mode: "debug" | "info" | "log" | "error", ...args: unknown[]): void;
protected info(...args: unknown[]): void;
protected debug(...args: unknown[]): void;
protected error(...args: unknown[]): void;
protected requiredAttributes(): string[];
protected init(observedAttributes: string[]): Promise<void>;
protected ready(): boolean;
protected attributeIsPassed(observedAttribute: string): boolean;
protected getPassedObservedAttributes(observedAttributes: string[]): void;
protected allPassedObservedAttributesAreInitialized(): boolean;
protected checkRequiredAttributes(): boolean;
protected parseAttribute(attr: string | null): any;
protected eventHandler(self: BasicComponent): EventHandler;
protected connectedCallback(): void;
protected disconnectedCallback(): void;
protected attributeChangedCallback(attributeName: string, oldValue: any, newValue: any, namespace: string | null): Promise<void>;
protected parsedAttributeChangedCallback(attributeName: string, oldValue: any, newValue: any, namespace: string | null): void;
protected adoptedCallback(oldDocument: Document, newDocument: Document): void;
protected loadTemplate(): Promise<JsxElement | HTMLElement | string | null>;
protected beforeTemplate(): Promise<any>;
protected afterTemplate(template: JsxElement | HTMLElement | string | null): Promise<any>;
protected onReady(): Promise<any>;
observe(keypath: string, callback: ObserverSyncCallback): Observer;
observeAttribute(attributeName: string, callback: ObserverSyncCallback): Observer;
setBinderAttribute(attributeName: string, newValue: any, namespace?: string | null): void;
getBinderAttribute(attributeName: string): any;
protected loadAttributes(observedAttributes: string[]): void;
}