@antv/s2
Version:
effective spreadsheet render core lib
23 lines (22 loc) • 1.18 kB
TypeScript
import { DisplayObjectConfig, Path } from '@antv/g';
import { flruCache } from 'flru';
import type { BaseCell } from '../cell';
import { CustomRendererConfig } from '../common/interface/renderer';
import { SimpleBBox } from '../engine';
export declare abstract class BaseRenderer {
static mediaCache: flruCache<HTMLElement | null>;
abstract prepare(renderer: CustomRendererConfig, cell: BaseCell<SimpleBBox>): Promise<HTMLElement | string | null>;
abstract render(cell: BaseCell<SimpleBBox>, config: DisplayObjectConfig<CustomRendererConfig['config']>): void;
abstract generateConfig(renderer: CustomRendererConfig, cell: BaseCell<SimpleBBox>, element: HTMLElement | string): DisplayObjectConfig<CustomRendererConfig['config']>;
protected getLoading(cell: BaseCell<SimpleBBox>): Path;
process(renderer: CustomRendererConfig, cell: BaseCell<SimpleBBox>): Promise<void>;
destroy(): void;
getCellInfo(cell: BaseCell<SimpleBBox>): {
x: number;
y: number;
width: number;
height: number;
text: string;
};
protected prepareText(renderer: CustomRendererConfig, cell: BaseCell<SimpleBBox>): Promise<string>;
}