import { Widget, Message } from '@theia/core/lib/browser';
import { BaseWidget } from '@theia/core/lib/browser/widgets/widget';
export interface RowDef {
    title: string;
    format?(cell: unknown): unknown;
    align?: 'left' | 'center' | 'right';
}
export declare abstract class BaseResmon extends BaseWidget {
    protected rowDefs: RowDef[];
    protected tbodyNode: HTMLTableSectionElement | null;
    protected abstract setup(): any;
    protected abstract initializeResmon(): any;
    protected init(): void;
    protected renderRows(rows: unknown[][]): void;
    private renderCell;
    private formatCell;
    protected onActivateRequest(msg: Message): void;
    protected onAfterShow(msg: Message): void;
    protected onAfterAttach(msg: Message): void;
    protected onBeforeDetach(msg: Message): void;
    protected onResize(msg: Widget.ResizeMessage): void;
    private initialized;
    protected onUpdateRequest(msg: Message): void;
    private renderHeader;
    private updateScroll;
}
//# sourceMappingURL=base-resmon.d.ts.map