2026-06-30 16:15:30 +02:00

42 lines
775 B
TypeScript

export interface InitPluginEvent {
type: 'init';
content: {
theme: string;
};
}
export interface TableConfigEvent {
type: 'tableconfig';
content: {
type: 'save' | 'retrieve';
options?: TableOptions;
};
}
export interface TablePluginEvent {
type: 'table';
content: {
import?: string[][];
new?: Cell;
type: 'new' | 'import';
options: TableOptions;
};
}
export interface ThemePluginEvent {
type: 'theme';
content: string;
}
export type PluginMessageEvent =
InitPluginEvent | TablePluginEvent | ThemePluginEvent | TableConfigEvent;
export type Cell = { column: number; row: number };
export type TableOptions = {
filledHeaderRow: boolean;
filledHeaderColumn: boolean;
borders: boolean;
alternateRows: boolean;
};