@happy-table/vue3
Version:
A high-performance Vue 3 table component for B2B systems with TypeScript support
48 lines (47 loc) • 3.11 kB
TypeScript
import { TableColumn, TableRow, PaginationConfig, SelectionConfig, EditingConfig, KeyboardConfig, ResponsiveConfig, VirtualConfig } from '../types/table';
import { TableConfig } from '../types';
import { ToolbarConfig } from '../types/toolbar';
import { ThemeConfig } from '../types/theme';
export declare const DEFAULT_PAGINATION_CONFIG: Required<PaginationConfig>;
export declare const DEFAULT_SELECTION_CONFIG: Omit<Required<SelectionConfig>, 'condition' | 'initialSelection'> & {
condition?: SelectionConfig['condition'];
initialSelection?: SelectionConfig['initialSelection'];
};
export declare const DEFAULT_EDITING_CONFIG: Required<EditingConfig>;
export declare const DEFAULT_KEYBOARD_CONFIG: Required<KeyboardConfig>;
export declare const DEFAULT_RESPONSIVE_CONFIG: Required<ResponsiveConfig>;
export declare const DEFAULT_VIRTUAL_CONFIG: Required<VirtualConfig>;
export declare const DEFAULT_THEME_CONFIG: Required<ThemeConfig>;
export declare const DEFAULT_TOOLBAR_CONFIG: Partial<ToolbarConfig>;
export declare function validateTableColumn(column: any): column is TableColumn;
export declare function validateTableRow(row: any): row is TableRow;
export interface ValidationResult {
valid: boolean;
errors: string[];
}
export declare function validateTableConfig(config: any): ValidationResult;
export declare function isValidTableConfig(config: any): config is TableConfig;
export declare function getDefaultTableColumn(column: Partial<TableColumn>): TableColumn;
export declare function getDefaultTableRow(row: Partial<TableRow>): TableRow;
export declare function getDefaultPaginationConfig(config?: Partial<PaginationConfig>): PaginationConfig;
export declare function getDefaultSelectionConfig(config?: Partial<SelectionConfig>): SelectionConfig;
export declare function getDefaultEditingConfig(config?: Partial<EditingConfig>): EditingConfig;
export declare function getDefaultKeyboardConfig(config?: Partial<KeyboardConfig>): KeyboardConfig;
export declare function getDefaultResponsiveConfig(config?: Partial<ResponsiveConfig>): ResponsiveConfig;
export declare function getDefaultVirtualConfig(config?: Partial<VirtualConfig>): VirtualConfig;
export declare function getDefaultThemeConfig(config?: Partial<ThemeConfig>): ThemeConfig;
export declare function getDefaultToolbarConfig(config?: Partial<ToolbarConfig>): ToolbarConfig;
export declare function getDefaultTableConfig(config: Partial<TableConfig>): TableConfig;
export declare function isTableColumn(value: any): value is TableColumn;
export declare function isTableRow(value: any): value is TableRow;
export declare function isTableConfig(value: any): value is TableConfig;
export declare class TableValidationError extends Error {
field?: string | undefined;
value?: any | undefined;
constructor(message: string, field?: string | undefined, value?: any | undefined);
}
export declare class TableConfigError extends Error {
config?: any | undefined;
constructor(message: string, config?: any | undefined);
}
export declare function validateAndThrow(config: unknown): asserts config is TableConfig;