@visactor/vchart
Version:
charts lib based @visactor/VGrammar
44 lines (43 loc) • 2.09 kB
TypeScript
import { type IGraphicAttribute, type IGraphic, type IGroup } from '@visactor/vrender-core';
import type { IRegion } from '../../region/interface';
import type { IComponent, IComponentOption } from '../interface';
import type { IComponentPluginService, IComponentPlugin } from '../../plugin/components/interface';
import type { IBoundsLike } from '@visactor/vutils';
import type { Datum, ILayoutRect } from '../../typings';
import type { IComponentSpec } from './interface';
import { LayoutModel } from '../../model/layout-model';
import { BaseComponentSpecTransformer } from './base-component-transformer';
import type { IModelSpecInfo } from '../../model/interface';
export declare class BaseComponent<T extends IComponentSpec = IComponentSpec> extends LayoutModel<T> implements IComponent {
static transformerConstructor: typeof BaseComponentSpecTransformer;
name: string;
readonly modelType: string;
readonly transformerConstructor: any;
pluginService?: IComponentPluginService;
static createComponent(specInfo: IModelSpecInfo, options: IComponentOption): IComponent;
protected _option: IComponentOption;
protected _regions: IRegion[];
getRegions(): IRegion[];
protected _container: IGroup;
created(): void;
initLayout(): void;
protected _getNeedClearVRenderComponents(): IGraphic[];
getVRenderComponents(): IGraphic<Partial<IGraphicAttribute>>[];
protected callPlugin(cb: (plugin: IComponentPlugin) => void): void;
protected getContainer(): IGroup;
_compareSpec(spec: T, prevSpec: T): {
change: boolean;
reMake: boolean;
reRender: boolean;
reSize: boolean;
reCompile: boolean;
};
release(): void;
clear(): void;
compile(): void;
compileMarks(group?: IGroup): void;
reAppendComponents(): void;
protected _delegateEvent: (component: IGraphic, event: any, type: string, item?: any, datum?: Datum) => void;
getBoundsInRect(rect: ILayoutRect, fullRect: ILayoutRect): IBoundsLike;
getDatum(graphic?: IGraphic<Partial<IGraphicAttribute>>): void;
}