Data Grid Formatting
Module Extensions
Section titled “Module Extensions”DataGridAdvancedFormatsConfig
Section titled “DataGridAdvancedFormatsConfig”interface DataGridAdvancedFormatsConfig { /** Disable or override individual built-ins by stable id. */ readonly formats?: Readonly<Record< string, false | DataGridAdvancedFormatOverride >>; /** Application formats appended to the built-in catalog. */ readonly customFormats?: readonly DataGridAdvancedFormatDefinition[]; /** Optional editors for ordinary value presets such as `date`. */ readonly presetEditors?: Partial<Record< DataGridValueFormatPreset, false | EditorCtr | string >>; /** Allow presentations to replace application cell templates globally. */ readonly replaceAuthoredTemplates?: boolean; /** Allow format-resolved editors to replace application editors globally. */ readonly replaceAuthoredEditors?: boolean}HTMLRevoGridElementEventMap (Extended from global)
Section titled “HTMLRevoGridElementEventMap (Extended from global)”interface HTMLRevoGridElementEventMap { [DATA_GRID_FORMATTING_CONFIGURATION_CHANGE_EVENT]: Readonly<DataGridFormattingConfig>}HTMLRevoGridElement (Extended from global)
Section titled “HTMLRevoGridElement (Extended from global)”interface HTMLRevoGridElement { /** Reactive declarative formats consumed by DataGridFormattingPlugin. */ dataGridFormatting?: DataGridFormattingPresetState; 'data-grid-formatting'?: DataGridFormattingPresetState}ColumnRegular (Extended from @revolist/revogrid)
Section titled “ColumnRegular (Extended from @revolist/revogrid)”interface ColumnRegular { /** Static or cell-resolved declarative Format Cells configuration. */ dataGridFormat?: DataGridFormatDefinition<TModel, P>}AdditionalData (Extended from @revolist/revogrid)
Section titled “AdditionalData (Extended from @revolist/revogrid)”interface AdditionalData { /** @deprecated Prefer `grid.dataGridFormatting`. */ dataGridFormatting?: DataGridFormattingPresetState}Plugin API
Section titled “Plugin API”DataGridFormattingPluginOptions
Section titled “DataGridFormattingPluginOptions”@internal Coordinates reciprocal plugin installation.
interface DataGridFormattingPluginOptions { readonly installContextMenu?: boolean; readonly installPanel?: boolean}DataGridFormattingPlugin
Section titled “DataGridFormattingPlugin”Spreadsheet-style value, visual presentation, appearance, and editor configuration for RevoGrid cells, rows, and columns.
Register this plugin once in grid.plugins. It installs the task-oriented
data-grid context menu, Format Cells dialog, and visual-format tooltips automatically. It also installs
the formatting-panel runtime; set grid.dataGridFormattingPanel = true to
show the opt-in toolbar. Formatting can then be declared through column.dataGridFormat or
grid.dataGridFormatting, inferred from a registered renderer assigned to
column.cellTemplate, or changed at runtime through this plugin’s API.
Source values are never modified.
Numeric values and numeric presets are right-aligned automatically. Set
appearance.horizontal to left, center, or right to override it.
Configure autoAlignNumericValues: false to disable this derived alignment.
Effective advanced presentations retain their own layout unless an explicit
horizontal alignment is authored.
Example: Declarative column, row, and cell formatting
import type { ColumnRegular } from '@revolist/revogrid';import { DataGridFormattingPlugin, type DataGridCellFormat,} from '@revolist/revogrid-pro';
type InvoiceRow = { id: string; customer: string; amount: number };
const money: DataGridCellFormat = { value: { preset: 'currency', locale: 'en-GB', currency: 'GBP', decimalPlaces: 2, },};
const columns: ColumnRegular<string, InvoiceRow>[] = [ { prop: 'customer', name: 'Customer' }, { prop: 'amount', name: 'Amount', dataGridFormat: money },];
grid.plugins = [DataGridFormattingPlugin];grid.columns = columns;grid.dataGridFormatting = { rows: [{ row: 0, format: { appearance: { bold: true } } }], cells: [{ range: { start: { row: 1, column: 1 } }, format: { ...money, appearance: { ...money.appearance, bold: true, fillColor: '#fef3c7' }, } }],};grid.source = [ { id: 'invoice-1', customer: 'Acme Ltd', amount: 1200 }, { id: 'invoice-2', customer: 'Northwind', amount: -350.5 },];Example: Save and restore application-owned formatting state
const saved = loadFormatting();
grid.plugins = [DataGridFormattingPlugin];grid.dataGridFormatting = { state: saved,};grid.addEventListener('datagridformattingchange', ({ detail }) => { saveFormatting(detail.state);});Example: Configure advanced formats and application-owned editors
import DateColumnType from '@revolist/revogrid-column-date';import { DataGridFormattingPlugin, type DataGridFormattingConfig,} from '@revolist/revogrid-pro';
const dateType = new DateColumnType();const formatting: DataGridFormattingConfig = { advancedFormats: { // Compatible built-ins are enabled unless explicitly disabled. formats: { pie: false, heatmap: { defaults: { minValue: 0, maxValue: 100 } }, }, // Editor packages stay optional and are supplied by the application. presetEditors: { date: dateType.editor }, },};
grid.plugins = [DataGridFormattingPlugin];grid.dataGridContextMenu = { formatting };grid.columns = [{ prop: 'completion', name: 'Completion', dataGridFormat: { presentation: { id: 'progress-line', options: { minValue: 0, maxValue: 100 }, }, },}];Dependencies
Section titled “Dependencies”- Auto-installed
EventManagerPlugin: Normalizes edits and paste operations through the unified grid edit pipeline. - Auto-installed
AutoFillPlugin: Generates spreadsheet-style value sequences while formatting follows the filled range. - Auto-installed
ClipboardPlugin: Provides rich Excel-compatible clipboard formatting. - Auto-installed
DataGridFormatDialogPlugin: Uses the Format Cells dialog for advanced formatting. - Optional
FormulaPlugin: Formats evaluated formula results while preserving raw formula source values. - Auto-installed
DataGridContextMenuPlugin: Provides Format Cells commands through the task-oriented data-grid context menu. - Auto-installed
TooltipPlugin: Displays details for visual-format parts such as Timeline events. - Auto-installed
DataGridFormattingPanelPlugin: Provides the opt-in single-row formatting toolbar runtime.
class DataGridFormattingPlugin { /** * Replace the runtime options used by dialog and programmatic formatting. * * Context-menu applications can set the same options reactively through * `grid.dataGridContextMenu.formatting`. * * @param config Locale, dialog, value-kind, advanced-format, * and optional editor settings. */ configure(config: DataGridFormattingConfig<T> = {}): void;
/** Return the active formatting options used by the dialog and toolbar. */ getConfiguration(): Readonly<DataGridFormattingConfig<T>>;
/** Convert safe Excel HTML declarations into canonical formatting options. */ importExcelClipboardFormat( declarations: readonly string[], ): DataGridCellFormat | undefined;
/** Convert display-only Excel HTML text using its canonical imported format. */ importExcelClipboardValue(displayText: string, format?: DataGridCellFormat): unknown;
/** Convert canonical formatting options into Excel-compatible HTML declarations. */ exportExcelClipboardFormat(format: DataGridCellFormat): string | undefined;
/** Convert a source value into the typed/display pair written to Excel HTML. */ exportExcelClipboardValue(value: unknown, format: DataGridCellFormat);
/** * Apply a complete value, advanced-presentation, and appearance format to a * physical cell, complete-row, or complete-column selection. This runtime format takes precedence over * declarative presets. * * @param target Physical cell, complete-row, or complete-column source coordinates to format. * @param format Complete format to apply. */ apply(target: DataGridFormattingTarget, format: DataGridCellFormat): void;
/** @internal Applies one clipboard/import batch with a single refresh and change event. */ applyBatch(entries: readonly { target: DataGridFormattingTarget; /** `null` records an explicit clipboard clear for the target. */ format: DataGridCellFormat | null; }[]): void;
/** @internal Applies accepted autofill formatting as one runtime mutation. */ applyAutofillBatch(entries: readonly AutofillFormattingBatchEntry[]): void;
/** * Select an ordinary value presentation while retaining font, fill, * alignment, and other appearance settings. A concrete value presentation * replaces any active advanced visualization for the same target. * * @param target Physical cell, complete-row, or complete-column source coordinates to format. * @param value Value-format layer to apply. */ applyValueFormat( target: DataGridFormattingTarget, value: DataGridCellFormat['value'], ): void;
/** * Patch selected formats without erasing unrelated value, appearance, or * presentation settings. A resolver can return a different patch per cell. */ patch( target: DataGridFormattingTarget, patch: DataGridCellFormatPatch | DataGridFormattingPatchResolver<T>, ): void;
/** * Clear runtime formatting for a physical cell selection without changing * source values. The explicit clear suppresses lower-priority declarative * formatting for that target. * * @param target Physical cell, complete-row, or complete-column source coordinates to clear. */ clear(target: DataGridFormattingTarget): void;
/** * Return the effective format for a cell after runtime and * declarative precedence has been resolved. * * @param address Physical source address of the cell. * @returns The effective format, or `undefined` when no format applies. */ getFormat(address: PhysicalCellAddress): DataGridCellFormat | undefined;
/** Return the effective coordinate-owned format for a complete column. */ getColumnFormat(address: PhysicalColumnAddress): DataGridCellFormat | undefined;
/** Return the coordinate-owned format for a complete row. */ getRowFormat(address: PhysicalRowAddress): DataGridCellFormat | undefined;
/** * Return the effective built-in, overridden, or application-defined advanced * format definition by its stable presentation id. * * Export integrations use this to apply presentation-owned scalar export * values without inspecting rendered cells. */ getAdvancedFormatDefinition(id: string): DataGridAdvancedFormatDefinition | undefined;
/** * Return a portable snapshot of coordinate-owned runtime operations. */ getState(): DataGridFormattingRuntimeState;
/** * Replace runtime Apply and Clear operations from a previous `getState()` * snapshot, refresh the grid, and emit `datagridformattingchange`. */ setState(state: DataGridFormattingRuntimeState): void;
/** @internal Replays a formatting state from HistoryPlugin. */ applyHistoryState(state: DataGridFormattingRuntimeState): boolean;
/** @internal Called by HistoryPlugin around an atomic structural snapshot replay. */ beginHistoryStructureReplay(): void;
/** @internal Called by HistoryPlugin after formatting and structure are both restored. */ endHistoryStructureReplay(): void;
/** @internal Keeps partial structural commands inside their History transaction. */ flushPendingStructuralTransaction(transactionId: number): void;
/** * Open the Format Cells dialog for a selection. Context-menu users do not * need to call this method directly. * * @param target Physical cells, complete rows, or complete columns to edit. * @param valueKind Value category used to choose available presets. * @param valueFormatting Set to `false` for appearance-only editing. */ openDialog( target: DataGridFormattingTarget, valueKind: DataGridFormattingValueKind, valueFormatting = true, ): void;
/** Return the effective value kind, including evaluated formula results. */ inferValueKind(target: DataGridFormattingTarget): DataGridFormattingValueKind;
resolveCellValue( model: T, column: ColumnRegular, rowType?: DimensionRows, value: unknown = model[column.prop], ): unknown;}isDataGridFormattingRuntime
Section titled “isDataGridFormattingRuntime”export function isDataGridFormattingRuntime( value: unknown,): value is DataGridFormattingRuntime;DATA_GRID_FORMATTING_PLUGIN
Section titled “DATA_GRID_FORMATTING_PLUGIN”DATA_GRID_FORMATTING_PLUGIN: string;DATA_GRID_FORMATTING_CHANGE_EVENT
Section titled “DATA_GRID_FORMATTING_CHANGE_EVENT”DATA_GRID_FORMATTING_CHANGE_EVENT: string;DATA_GRID_FORMATTING_CONFIGURATION_CHANGE_EVENT
Section titled “DATA_GRID_FORMATTING_CONFIGURATION_CHANGE_EVENT”DATA_GRID_FORMATTING_CONFIGURATION_CHANGE_EVENT: string;DataGridFormattingRuntime (Extended from index.ts)
Section titled “DataGridFormattingRuntime (Extended from index.ts)”interface DataGridFormattingRuntime { readonly [DATA_GRID_FORMATTING_PLUGIN]: true; getFormat(address: PhysicalCellAddress): DataGridCellFormat | undefined; getColumnFormat(address: PhysicalColumnAddress): DataGridCellFormat | undefined; getRowFormat(address: PhysicalRowAddress): DataGridCellFormat | undefined; getAdvancedFormatDefinition(id: string): DataGridAdvancedFormatDefinition | undefined; getState(): DataGridFormattingRuntimeState; apply(target: DataGridFormattingTarget, format: DataGridCellFormat): void; applyBatch(entries: readonly { target: DataGridFormattingTarget; format: DataGridCellFormat | null; }[]): void; importExcelClipboardFormat(declarations: readonly string[]): DataGridCellFormat | undefined; importExcelClipboardValue(displayText: string, format?: DataGridCellFormat): unknown; exportExcelClipboardFormat(format: DataGridCellFormat): string | undefined; exportExcelClipboardValue( value: unknown, format: DataGridCellFormat, ): DataGridExcelClipboardValue; resolveCellValue( model: DataType, column: ColumnRegular, rowType?: DimensionRows, value?: unknown, ): unknown}DataGridExcelClipboardValue
Section titled “DataGridExcelClipboardValue”interface DataGridExcelClipboardValue { /** Typed value written to Excel HTML. Source data is never mutated. */ readonly value: unknown; /** Canonically formatted text shown by Excel before/recalculation. */ readonly displayText: string}resolveDataGridFormattingLocale
Section titled “resolveDataGridFormattingLocale”export function resolveDataGridFormattingLocale( localeText?: DataGridFormattingDialogConfig['localeText'],): DataGridFormattingLocaleText;DATA_GRID_FORMATTING_LOCALE
Section titled “DATA_GRID_FORMATTING_LOCALE”DATA_GRID_FORMATTING_LOCALE: { title: string; close: string; description: string; selectionSummary: string; selectionCells: string; selectionColumns: string; valueSection: string; automaticDescription: string; advancedSection: string; advancedNone: string; advancedDescription: string; numberSection: string; category: string; locale: string; browserDefault: string; decimals: string; grouping: string; currency: string; negativeNumbers: string; dateStyle: string; timeStyle: string; custom: string; formatCode: string; invalidFormatCode: string; fontSection: string; typographySection: string; colorsSection: string; fontFamily: string; defaultFont: string; fontSize: string; bold: string; italic: string; underline: string; strike: string; textColor: string; fillColor: string; useTextColor: string; useFillColor: string; defaultColor: string; noFill: string; customColor: string; customColorHex: string; invalidColor: string; colorLabels: { [k: string]: string; }; advancedGroupLabels: { Advanced: string; Indicators: string; Charts: string; Values: string; Identity: string; Summaries: string; }; advancedFormatLabels: { 'progress-line': string; 'progress-line-value': string; 'circular-progress': string; heatmap: string; rating: string; change: string; threshold: string; boolean: string; thumbs: string; badge: string; sparkline: string; bar: string; pie: string; timeline: string; avatar: string; 'avatar-with-text': string; 'summary-percentage': string; 'summary-aggregate': string; }; advancedFormatDescriptions: { 'progress-line': string; 'progress-line-value': string; threshold: string; }; advancedControlLabels: { 'progress-line.minValue': string; 'progress-line.maxValue': string; 'progress-line-value.minValue': string; 'progress-line-value.maxValue': string; 'circular-progress.minValue': string; 'circular-progress.maxValue': string; 'circular-progress.showValue': string; 'heatmap.minValue': string; 'heatmap.midValue': string; 'heatmap.maxValue': string; 'heatmap.lowColor': string; 'heatmap.midColor': string; 'heatmap.highColor': string; 'rating.maxStars': string; 'badge.rectangular': string; 'sparkline.minValue': string; 'sparkline.maxValue': string; 'bar.minValue': string; 'bar.maxValue': string; 'bar.barPosition': string; 'avatar.avatarSize': string; 'avatar.rectangular': string; 'avatar-with-text.avatarSize': string; 'avatar-with-text.rectangular': string; 'summary-percentage.maxItems': string; 'summary-aggregate.showSum': string; 'summary-aggregate.showAvg': string; }; advancedOptionLabels: { 'bar.barPosition.bottom': string; 'bar.barPosition.top': string; }; expandSection: string; collapseSection: string; alignmentSection: string; horizontal: string; vertical: string; wrap: string; borderSection: string; borderStyle: string; borderColor: string; preview: string; previewOriginal: string; previewFormatted: string; previewHint: string; clear: string; cancel: string; apply: string; textExample: string; presetLabels: { automatic: string; number: string; currency: string; accounting: string; percent: string; scientific: string; date: string; datetime: string; time: string; text: string; }; optionLabels: { automatic: string; left: string; center: string; right: string; top: string; middle: string; bottom: string; none: string; solid: string; dashed: string; dotted: string; double: string; short: string; medium: string; long: string; full: string; negativeMinus: string; negativeRed: string; negativeParentheses: string; }; dataEditor: { chartTitle: string; timelineTitle: string; close: string; preview: string; pointSummary: string; pointsSummary: string; eventSummary: string; eventsSummary: string; value: string; pointValue: string; label: string; start: string; end: string; eventLabel: string; eventStart: string; eventEnd: string; addPoint: string; addEvent: string; deletePoint: string; deleteEvent: string; reorderPoint: string; moveEvent: string; reorderEvent: string; pasteValues: string; pasteHint: string; replaceValues: string; appendValues: string; editRawJson: string; visualEditor: string; rawJsonHint: string; invalidNumber: string; invalidPaste: string; invalidTimeline: string; invalidJson: string; outsideRange: string; emptyPoints: string; emptyEvents: string; cancel: string; apply: string; validationSummary: string; resizeStart: string; resizeEnd: string; };};DataGridFormatDialogPlugin
Section titled “DataGridFormatDialogPlugin”Dependencies
Section titled “Dependencies”- Auto-installed
DialogPlugin: Uses the shared Pro dialog runtime for Format Cells.
class DataGridFormatDialogPlugin { open(options: DataGridFormattingDialogOpenOptions<T>): void;
close(): void;}createDataGridFormattingEditor
Section titled “createDataGridFormattingEditor”export function createDataGridFormattingEditor( document: Document, options: DataGridFormattingDialogOpenOptions, locale: DataGridFormattingLocaleText,): DataGridFormattingEditor;DataGridFormattingEditor
Section titled “DataGridFormattingEditor”interface DataGridFormattingEditor { readonly element: HTMLElement; readonly preview: HTMLElement; readonly descriptionId: string; getDraft(): DataGridCellFormat; isValid(): boolean; onValidityChange(listener: (valid: boolean) => void): () => void; destroy(): void}importDataGridExcelClipboardFormat
Section titled “importDataGridExcelClipboardFormat”Convert raw Excel HTML declarations into the canonical formatting options. Clipboard codecs deliberately do not interpret or render these declarations.
export function importDataGridExcelClipboardFormat( declarations: readonly string[],): DataGridCellFormat | undefined;exportDataGridExcelClipboardFormat
Section titled “exportDataGridExcelClipboardFormat”Convert canonical formatting options into the Excel HTML representation.
export function exportDataGridExcelClipboardFormat( format: DataGridCellFormat,): string | undefined;exportDataGridExcelClipboardValue
Section titled “exportDataGridExcelClipboardValue”Convert a raw value into Excel HTML’s typed value plus canonical display.
export function exportDataGridExcelClipboardValue( value: unknown, format: DataGridCellFormat,);createDataGridExcelNumberFormat
Section titled “createDataGridExcelNumberFormat”Map canonical value-format options to one native Excel number-format code.
export function createDataGridExcelNumberFormat( format: import('../types').DataGridValueFormat,): string | undefined;importDataGridExcelClipboardValue
Section titled “importDataGridExcelClipboardValue”Convert display-only Excel HTML text into a canonical typed value.
export function importDataGridExcelClipboardDisplayValue( displayText: string, format?: DataGridCellFormat,): unknown;resolveDataGridAdvancedFormats
Section titled “resolveDataGridAdvancedFormats”export function resolveDataGridAdvancedFormats( config?: false | DataGridAdvancedFormatsConfig,): readonly DataGridAdvancedFormatDefinition[];compatibleDataGridAdvancedFormats
Section titled “compatibleDataGridAdvancedFormats”export function compatibleDataGridAdvancedFormats<T extends DataType>( definitions: readonly DataGridAdvancedFormatDefinition[], selection: DataGridFormattingResolvedSelection<T>, fallbackKind: DataGridFormattingValueKind = 'unknown', resolveValue?: (context: DataGridAdvancedFormatCompatibilityContext) => unknown,): readonly DataGridAdvancedFormatDefinition[];isDataGridAdvancedFormatCompatible
Section titled “isDataGridAdvancedFormatCompatible”export function isDataGridAdvancedFormatCompatible( definition: DataGridAdvancedFormatDefinition, context: DataGridAdvancedFormatCompatibilityContext,): boolean;findDataGridAdvancedFormat
Section titled “findDataGridAdvancedFormat”export function findDataGridAdvancedFormat( definitions: readonly DataGridAdvancedFormatDefinition[], id: string | undefined,): DataGridAdvancedFormatDefinition | undefined;resolveDataGridRendererFormat
Section titled “resolveDataGridRendererFormat”Resolve the authored advanced-format baseline advertised by a cell renderer.
export function resolveDataGridRendererFormat( definitions: readonly DataGridAdvancedFormatDefinition[], column: ColumnRegular | undefined,): DataGridCellFormat | undefined;dataGridAdvancedAppearanceColorStyle
Section titled “dataGridAdvancedAppearanceColorStyle”Map generic appearance colors either to the cell or renderer-owned variables.
export function dataGridAdvancedAppearanceColorStyle( appearance: DataGridCellFormat['appearance'], definition?: DataGridAdvancedFormatDefinition, textColor = appearance?.textColor,): Record<string, string | undefined>;DATA_GRID_BUILT_IN_ADVANCED_FORMATS
Section titled “DATA_GRID_BUILT_IN_ADVANCED_FORMATS”Cell-capable visualizations shipped with RevoGrid Pro.
DATA_GRID_BUILT_IN_ADVANCED_FORMATS: readonly DataGridAdvancedFormatDefinition[];createDataGridValueFormat
Section titled “createDataGridValueFormat”export function createDataGridValueFormat( preset: DataGridValueFormatPreset, locale?: string, currency = 'USD',): DataGridCellFormat;createDataGridCodeFormat
Section titled “createDataGridCodeFormat”export function createDataGridCodeFormat( formatCode: string, locale?: string,): DataGridCellFormat;isDataGridPresetValueFormat
Section titled “isDataGridPresetValueFormat”export function isDataGridPresetValueFormat( format: DataGridValueFormat | undefined,): format is DataGridPresetValueFormat;isDataGridCodeValueFormat
Section titled “isDataGridCodeValueFormat”export function isDataGridCodeValueFormat( format: DataGridValueFormat | undefined,): format is DataGridCodeValueFormat;inferDataGridFormattingKind
Section titled “inferDataGridFormattingKind”export function inferDataGridFormattingKind<T extends DataType>( selection: DataGridFormattingResolvedSelection<T>, columnTypeKinds: Readonly<Record<string, DataGridFormattingValueKind>> = {}, resolveValue: DataGridFormattingValueResolver<T> = ({ model, column }) => model[column.prop],): DataGridFormattingValueKind;formatDataGridValue
Section titled “formatDataGridValue”export function formatDataGridValue( value: unknown, format?: DataGridValueFormat,): string;formatDataGridExcelCode
Section titled “formatDataGridExcelCode”Formats the common Excel custom-number-code families used by HTML clipboard data.
export function formatDataGridExcelCode(value: unknown, code: string): string;classifyDataGridValueFormat
Section titled “classifyDataGridValueFormat”export function classifyDataGridValueFormat(format?: DataGridValueFormat);formatDataGridAutomaticValue
Section titled “formatDataGridAutomaticValue”Readable default display for scalar and structured values.
export function formatDataGridAutomaticValue(value: unknown): string;isDataGridNumberPreset
Section titled “isDataGridNumberPreset”export function isDataGridNumberPreset(preset: DataGridValueFormatPreset): boolean;isDataGridDatePreset
Section titled “isDataGridDatePreset”export function isDataGridDatePreset(preset: DataGridValueFormatPreset): boolean;normalizeDataGridLocale
Section titled “normalizeDataGridLocale”export function normalizeDataGridLocale(locale?: string): string | undefined;normalizeDataGridCurrency
Section titled “normalizeDataGridCurrency”export function normalizeDataGridCurrency(currency?: string): string;toDataGridDate
Section titled “toDataGridDate”export function toDataGridDate(value: unknown): Date | undefined;DataGridFormattingValueResolver
Section titled “DataGridFormattingValueResolver”export type DataGridFormattingValueResolver<T extends DataType = DataType> = ( cell: DataGridFormattingCell<T>,) => unknown;compileDataGridFormatCode
Section titled “compileDataGridFormatCode”export function compileDataGridFormatCode(code: string): ParsedDataGridFormatCode;validateDataGridFormatCode
Section titled “validateDataGridFormatCode”export function validateDataGridFormatCode(code: string): readonly DataGridFormatCodeDiagnostic[];formatDataGridCodeValue
Section titled “formatDataGridCodeValue”export function formatDataGridCodeValue( value: unknown, code: string, locale?: string,): DataGridFormattedCodeValue;classifyDataGridCodeValue
Section titled “classifyDataGridCodeValue”export function classifyDataGridCodeValue(code: string);getDataGridFormatCodeCacheSize
Section titled “getDataGridFormatCodeCacheSize”@internal Test hook for proving bounded cache behavior.
export function getDataGridFormatCodeCacheSize();MAX_DATA_GRID_FORMAT_CODE_LENGTH
Section titled “MAX_DATA_GRID_FORMAT_CODE_LENGTH”MAX_DATA_GRID_FORMAT_CODE_LENGTH: 4096;DataGridFormatCodeValueKind
Section titled “DataGridFormatCodeValueKind”export type DataGridFormatCodeValueKind = 'number' | 'date' | 'time' | 'text' | 'automatic';DataGridFormatCodeDiagnostic
Section titled “DataGridFormatCodeDiagnostic”interface DataGridFormatCodeDiagnostic { readonly index: number; readonly message: string}DataGridFormatCodeSegment
Section titled “DataGridFormatCodeSegment”export type DataGridFormatCodeSegment = | { readonly kind: 'text'; readonly value: string } | { readonly kind: 'space'; readonly character: string } | { readonly kind: 'fill'; readonly character: string };DataGridFormattedCodeValue
Section titled “DataGridFormattedCodeValue”interface DataGridFormattedCodeValue { readonly text: string; readonly color?: string; readonly kind: DataGridFormatCodeValueKind; readonly segments: readonly DataGridFormatCodeSegment[]}DataGridFormatCodeConditionOperator
Section titled “DataGridFormatCodeConditionOperator”export type DataGridFormatCodeConditionOperator = '<' | '<=' | '>' | '>=' | '=' | '<>';DataGridFormatCodeCondition
Section titled “DataGridFormatCodeCondition”interface DataGridFormatCodeCondition { readonly operator: DataGridFormatCodeConditionOperator; readonly value: number}DataGridFormatCodeToken
Section titled “DataGridFormatCodeToken”export type DataGridFormatCodeToken = | { readonly kind: 'literal'; readonly value: string } | { readonly kind: 'placeholder'; readonly value: string } | { readonly kind: 'decimal' } | { readonly kind: 'comma' } | { readonly kind: 'percent' } | { readonly kind: 'fraction' } | { readonly kind: 'exponent'; readonly value: string } | { readonly kind: 'date'; readonly symbol: 'y' | 'm' | 'd' | 'h' | 's'; readonly length: number } | { readonly kind: 'elapsed'; readonly symbol: 'h' | 'm' | 's'; readonly length: number } | { readonly kind: 'ampm'; readonly short: boolean } | { readonly kind: 'text' } | { readonly kind: 'general' } | { readonly kind: 'space'; readonly character: string } | { readonly kind: 'fill'; readonly character: string } | { readonly kind: 'currency'; readonly symbol: string; readonly localeId?: string };ParsedDataGridFormatCodeSection
Section titled “ParsedDataGridFormatCodeSection”interface ParsedDataGridFormatCodeSection { readonly tokens: readonly DataGridFormatCodeToken[]; readonly condition?: DataGridFormatCodeCondition; readonly color?: string}ParsedDataGridFormatCode
Section titled “ParsedDataGridFormatCode”interface ParsedDataGridFormatCode { readonly code: string; readonly sections: readonly ParsedDataGridFormatCodeSection[]; readonly diagnostics: readonly DataGridFormatCodeDiagnostic[]}resolveDataGridFormatCodeLocale
Section titled “resolveDataGridFormatCodeLocale”export function resolveDataGridFormatCodeLocale( parsed: ParsedDataGridFormatCode,): string | undefined;resolveDataGridFormatSectionLocale
Section titled “resolveDataGridFormatSectionLocale”export function resolveDataGridFormatSectionLocale( section: ParsedDataGridFormatCodeSection,): string | undefined;applyDataGridCellFormatPatch
Section titled “applyDataGridCellFormatPatch”Merge one public format patch into an effective format.
export function applyDataGridCellFormatPatch( current: DataGridCellFormat | undefined, patch: DataGridCellFormatPatch,): DataGridCellFormat;formatWithValuePresentation
Section titled “formatWithValuePresentation”Select a value presentation while retaining only the appearance layer.
export function formatWithValuePresentation( current: DataGridCellFormat | undefined, value: DataGridCellFormat['value'],): DataGridCellFormat;markDataGridFormatRenderer
Section titled “markDataGridFormatRenderer”Mark a cell renderer as the authored baseline for an advanced format.
The marker is declarative metadata only. It never talks to a grid or plugin while the renderer runs, so renderers remain pure and safe to reuse.
export function markDataGridFormatRenderer<T extends CellTemplate>( renderer: T, presentation: string | DataGridCellPresentation,): T;getDataGridFormatRendererPresentation
Section titled “getDataGridFormatRendererPresentation”Return the advanced-format presentation declared by a renderer, if any.
export function getDataGridFormatRendererPresentation( renderer: CellTemplate | undefined,): DataGridCellPresentation | undefined;DATA_GRID_FORMAT_RENDERER
Section titled “DATA_GRID_FORMAT_RENDERER”Public metadata key used by renderers that represent a Format Cells presentation.
DATA_GRID_FORMAT_RENDERER: typeof DATA_GRID_FORMAT_RENDERER;isDataGridFormattingRuntimeState
Section titled “isDataGridFormattingRuntimeState”export function isDataGridFormattingRuntimeState( value: unknown,): value is DataGridFormattingRuntimeState;cloneDataGridFormattingRuntimeState
Section titled “cloneDataGridFormattingRuntimeState”export function cloneDataGridFormattingRuntimeState( state: DataGridFormattingRuntimeState,): DataGridFormattingRuntimeState;DataGridValueFormatPreset
Section titled “DataGridValueFormatPreset”Public value-format categories supported by the formatting plugin.
/** Public value-format categories supported by the formatting plugin. */export type DataGridValueFormatPreset = | 'automatic' | 'number' | 'currency' | 'accounting' | 'percent' | 'scientific' | 'date' | 'datetime' | 'time' | 'text';DataGridFormattingValueKind
Section titled “DataGridFormattingValueKind”export type DataGridFormattingValueKind = | 'number' | 'date' | 'text' | 'boolean' | 'mixed' | 'unknown';DataGridPresetValueFormat
Section titled “DataGridPresetValueFormat”interface DataGridPresetValueFormat { readonly kind: 'preset'; readonly preset: DataGridValueFormatPreset; readonly locale?: string; readonly decimalPlaces?: number; readonly useGrouping?: boolean; readonly currency?: string; readonly dateStyle?: 'short' | 'medium' | 'long' | 'full'; readonly timeStyle?: 'short' | 'medium' | 'long'; readonly timeZone?: string; readonly negativeStyle?: 'minus' | 'red' | 'parentheses'}DataGridCodeValueFormat
Section titled “DataGridCodeValueFormat”Exact spreadsheet number-format code used by Excel-compatible transports.
interface DataGridCodeValueFormat { readonly kind: 'code'; readonly formatCode: string; /** Locale used when the code does not carry an explicit locale token. */ readonly locale?: string}DataGridValueFormat
Section titled “DataGridValueFormat”One canonical value-format representation. Presets and exact codes cannot conflict.
/** One canonical value-format representation. Presets and exact codes cannot conflict. */export type DataGridValueFormat = DataGridPresetValueFormat | DataGridCodeValueFormat;DataGridCellBorder
Section titled “DataGridCellBorder”interface DataGridCellBorder { readonly style: 'none' | 'solid' | 'dashed' | 'dotted' | 'double'; readonly color?: string; readonly width?: number}DataGridCellAppearance
Section titled “DataGridCellAppearance”interface DataGridCellAppearance { readonly fontFamily?: string; readonly fontSize?: number; readonly bold?: boolean; readonly italic?: boolean; readonly underline?: boolean; readonly strike?: boolean; readonly textColor?: string; readonly fillColor?: string; readonly horizontal?: 'automatic' | 'left' | 'center' | 'right' | 'justify'; readonly vertical?: 'top' | 'middle' | 'bottom'; readonly wrap?: boolean; readonly borderStyle?: 'none' | 'solid' | 'dashed' | 'dotted' | 'double'; readonly borderColor?: string; /** Per-edge borders take precedence over the legacy uniform border fields. */ readonly borders?: Readonly<Partial<Record<'top' | 'right' | 'bottom' | 'left', DataGridCellBorder>>>; readonly indent?: number; readonly textRotation?: number; readonly shrinkToFit?: boolean}DataGridCellPresentation
Section titled “DataGridCellPresentation”A registry-backed cell visualization selected by Format Cells.
interface DataGridCellPresentation { /** Stable built-in or application-defined format id. */ readonly id: string; /** Serializable values consumed by the format definition. */ readonly options?: Readonly<Record<string, unknown>>}DataGridCellFormat
Section titled “DataGridCellFormat”interface DataGridCellFormat { /** Controls how the raw value is rendered without changing source data. */ readonly value?: DataGridValueFormat; /** Controls typography, colors, alignment, wrapping, and borders. */ readonly appearance?: DataGridCellAppearance; /** Optional advanced visualization such as a progress bar or sparkline. */ readonly presentation?: DataGridCellPresentation}DataGridCellFormatPatch
Section titled “DataGridCellFormatPatch”A non-destructive update to one effective cell format.
interface DataGridCellFormatPatch { /** Replaces the value layer. `null` removes it. */ readonly value?: DataGridValueFormat | null; /** Merges only the supplied appearance properties. `null` removes the layer. */ readonly appearance?: Partial<DataGridCellAppearance> | null; /** Replaces the advanced presentation. `null` removes it. */ readonly presentation?: DataGridCellPresentation | null}DataGridFormattingPatchTarget
Section titled “DataGridFormattingPatchTarget”Per-target context supplied to a runtime format patch resolver.
interface DataGridFormattingPatchTarget { readonly current?: DataGridCellFormat; readonly model?: T; readonly column: ColumnRegular; readonly rowType?: DimensionRows}DataGridFormattingPatchResolver
Section titled “DataGridFormattingPatchResolver”export type DataGridFormattingPatchResolver<T extends DataType = DataType> = ( target: DataGridFormattingPatchTarget<T>,) => DataGridCellFormatPatch;DataGridAdvancedFormatValueKind
Section titled “DataGridAdvancedFormatValueKind”export type DataGridAdvancedFormatValueKind = | 'number' | 'boolean' | 'text' | 'scalar' | 'numberArray' | 'pieArray' | 'timelineArray' | 'summaryRecord';DataGridAdvancedFormatCompatibilityContext
Section titled “DataGridAdvancedFormatCompatibilityContext”interface DataGridAdvancedFormatCompatibilityContext { readonly value: unknown; readonly model?: DataType; readonly column?: ColumnRegular; readonly rowType?: DimensionRows}DataGridAdvancedFormatControl
Section titled “DataGridAdvancedFormatControl”export type DataGridAdvancedFormatControl = | { readonly type: 'number'; readonly key: string; readonly label: string; readonly min?: number; readonly max?: number; readonly step?: number; } | { readonly type: 'boolean'; readonly key: string; readonly label: string; } | { readonly type: 'select'; readonly key: string; readonly label: string; readonly options: readonly { readonly value: string; readonly label: string }[]; } | { readonly type: 'color'; readonly key: string; readonly label: string; };DataGridAdvancedFormatAppearanceSections
Section titled “DataGridAdvancedFormatAppearanceSections”interface DataGridAdvancedFormatAppearanceSections { /** Whether generic text/fill color controls apply to this renderer. */ readonly colors?: boolean; /** * Routes generic appearance colors into renderer-owned CSS custom properties * instead of painting the complete cell. */ readonly colorVariables?: { readonly text?: `--${string}`; readonly fill?: `--${string}`; }}DataGridAdvancedFormatEditorContext
Section titled “DataGridAdvancedFormatEditorContext”Runtime context available to advanced-format structured editor factories.
interface DataGridAdvancedFormatEditorContext { readonly schema: ColumnDataSchemaModel; readonly format?: DataGridCellFormat; readonly presentation: DataGridAdvancedFormatDefinition; readonly localeText: DataGridFormattingLocaleText; readonly revogrid: HTMLRevoGridElement; readonly providers: PluginProviders; readonly save: (value?: unknown, preventFocus?: boolean) => void; readonly close: (focusNext?: boolean) => void}DataGridAdvancedFormatEditorFactory
Section titled “DataGridAdvancedFormatEditorFactory”export type DataGridAdvancedFormatEditorFactory = ( context: DataGridAdvancedFormatEditorContext,) => EditorBase;DataGridAdvancedFormatExportContext
Section titled “DataGridAdvancedFormatExportContext”Context passed to an advanced presentation’s workbook export formatter.
interface DataGridAdvancedFormatExportContext { /** Raw source value rendered by the presentation. */ readonly value: unknown; /** Source row that owns the exported cell. */ readonly model: DataType; /** Column that owns the exported cell. */ readonly column: ColumnRegular; /** Body or pinned-row segment containing the source row. */ readonly rowType: DimensionRows; /** Complete effective cell format. */ readonly format: DataGridCellFormat; /** Definition defaults merged with the selected presentation options. */ readonly options: Readonly<Record<string, unknown>>}DataGridAdvancedFormatExportValue
Section titled “DataGridAdvancedFormatExportValue”export type DataGridAdvancedFormatExportValue = | string | number | boolean | Date | null | undefined;DataGridAdvancedFormatExportFormatter
Section titled “DataGridAdvancedFormatExportFormatter”Produces a workbook-safe scalar value for an advanced presentation.
/** Produces a workbook-safe scalar value for an advanced presentation. */export type DataGridAdvancedFormatExportFormatter = ( context: DataGridAdvancedFormatExportContext,) => DataGridAdvancedFormatExportValue;DataGridAdvancedFormatDefinition
Section titled “DataGridAdvancedFormatDefinition”Public registry entry for a built-in override or custom advanced format.
interface DataGridAdvancedFormatDefinition { readonly id: string; readonly label: string; readonly description?: string; readonly group?: string; readonly order?: number; readonly icon?: string; /** * Renderer applied by this presentation. Use `markDataGridFormatRenderer` * when the same renderer is also authored directly on columns and should be * recognized as their Format Cells baseline. */ readonly cellTemplate: CellTemplate; /** Optional provider-free renderer used by the detached Format Cells preview. */ readonly previewTemplate?: CellTemplate; /** Keeps intrinsic preview content from stretching to the preview cell height. */ readonly previewLayout?: 'fill' | 'intrinsic'; /** Shorthand compatibility used by the built-in catalog. */ readonly valueKind?: DataGridAdvancedFormatValueKind; /** Custom compatibility predicate. It must be true for every selected value. */ readonly isCompatible?: ( context: DataGridAdvancedFormatCompatibilityContext, ) => boolean; readonly defaults?: Readonly<Record<string, unknown>>; readonly controls?: readonly DataGridAdvancedFormatControl[]; /** Generic appearance sections supported by this presentation. */ readonly appearanceSections?: DataGridAdvancedFormatAppearanceSections; /** Optional editor used only when this presentation is effective for a cell. */ readonly editor?: EditorCtr | string; /** Context-aware editor factory. Preferred over `editor` when supplied. */ readonly editorFactory?: DataGridAdvancedFormatEditorFactory; /** * Converts structured presentation data to a workbook-safe scalar value. * Source data is not modified. */ readonly exportValue?: DataGridAdvancedFormatExportFormatter; /** Native Excel number format applied when this presentation is effective. */ readonly excelNumberFormat?: string; /** Allows this definition to replace an authored cell template. */ readonly replaceAuthoredTemplate?: boolean; /** Allows this definition to replace an authored editor. */ readonly replaceAuthoredEditor?: boolean}DataGridAdvancedFormatOverride
Section titled “DataGridAdvancedFormatOverride”interface DataGridAdvancedFormatOverride { readonly label?: string; readonly description?: string; readonly defaults?: Readonly<Record<string, unknown>>; readonly controls?: readonly DataGridAdvancedFormatControl[]; readonly appearanceSections?: DataGridAdvancedFormatAppearanceSections; readonly previewTemplate?: CellTemplate; readonly editor?: EditorCtr | string; readonly editorFactory?: DataGridAdvancedFormatEditorFactory; readonly exportValue?: DataGridAdvancedFormatExportFormatter; readonly excelNumberFormat?: string; readonly replaceAuthoredTemplate?: boolean; readonly replaceAuthoredEditor?: boolean}DataGridFormatContext
Section titled “DataGridFormatContext”interface DataGridFormatContext { readonly model: T; readonly value: unknown; readonly prop: P; readonly rowType?: DimensionRows}DataGridFormatDefinition
Section titled “DataGridFormatDefinition”export type DataGridFormatDefinition< T extends DataType = DataType, P extends ColumnProp = ColumnProp,> = | DataGridCellFormat | ((context: DataGridFormatContext<T, P>) => DataGridCellFormat | undefined);CellCoordinate
Section titled “CellCoordinate”A zero-based cell coordinate in physical row and column source stores.
interface CellCoordinate { /** Physical index in the selected row type's `source` array. */ readonly row: number; /** Physical index in the selected column type's `source` array. */ readonly column: number}PhysicalCellAddress (Extended from index.ts)
Section titled “PhysicalCellAddress (Extended from index.ts)”A physical cell coordinate qualified by its row and column source stores.
interface PhysicalCellAddress { /** Row source containing the cell. Defaults to `rgRow`. */ readonly rowType?: DimensionRows; /** Column source containing the cell. Defaults to `rgCol`. */ readonly colType?: DimensionCols}PhysicalColumnAddress
Section titled “PhysicalColumnAddress”A physical column coordinate qualified by its source store.
interface PhysicalColumnAddress { readonly column: number; /** Column source containing the column. Defaults to `rgCol`. */ readonly colType?: DimensionCols}PhysicalRowAddress
Section titled “PhysicalRowAddress”A physical row coordinate qualified by its source store.
interface PhysicalRowAddress { readonly row: number; /** Row source containing the row. Defaults to `rgRow`. */ readonly rowType?: DimensionRows}PhysicalColumnRange
Section titled “PhysicalColumnRange”An inclusive range of complete columns in one physical column source.
interface PhysicalColumnRange { /** First physical column index. */ readonly start: number; /** Inclusive last physical column index. Defaults to `start`. */ readonly end?: number; /** Column source containing the target. Defaults to `rgCol`. */ readonly colType?: DimensionCols}PhysicalRowRange
Section titled “PhysicalRowRange”An inclusive range of complete rows in one physical row source.
interface PhysicalRowRange { /** First physical row index. */ readonly start: number; /** Inclusive last physical row index. Defaults to `start`. */ readonly end?: number; /** Row source containing the target. Defaults to `rgRow`. */ readonly rowType?: DimensionRows}PhysicalCellRange
Section titled “PhysicalCellRange”A rectangular target expressed by inclusive physical source coordinates.
interface PhysicalCellRange { /** First physical source coordinate. */ readonly start: CellCoordinate; /** Inclusive opposite corner. Defaults to `start`; reversed corners are normalized. */ readonly end?: CellCoordinate; /** Row source containing the target. Defaults to `rgRow`. */ readonly rowType?: DimensionRows; /** Column source containing the target. Defaults to `rgCol`. */ readonly colType?: DimensionCols}DataGridFormattingSelection
Section titled “DataGridFormattingSelection”One physical range, or several independent/overlapping physical ranges.
/** One physical range, or several independent/overlapping physical ranges. */export type DataGridFormattingSelection = | PhysicalCellRange | readonly PhysicalCellRange[];DataGridFormattingColumnSelection
Section titled “DataGridFormattingColumnSelection”Complete-column formatting target, including rows added in the future.
interface DataGridFormattingColumnSelection { readonly scope: 'columns'; readonly ranges: PhysicalColumnRange | readonly PhysicalColumnRange[]}DataGridFormattingRowSelection
Section titled “DataGridFormattingRowSelection”Complete-row formatting target, including columns added in the future.
interface DataGridFormattingRowSelection { readonly scope: 'rows'; readonly ranges: PhysicalRowRange | readonly PhysicalRowRange[]}DataGridFormattingTarget
Section titled “DataGridFormattingTarget”Coordinate-only target accepted by formatting mutation and dialog APIs.
/** Coordinate-only target accepted by formatting mutation and dialog APIs. */export type DataGridFormattingTarget = | DataGridFormattingSelection | DataGridFormattingColumnSelection | DataGridFormattingRowSelection;DataGridFormattingColumnPreset (Extended from index.ts)
Section titled “DataGridFormattingColumnPreset (Extended from index.ts)”interface DataGridFormattingColumnPreset { /** Format applied to cells in the column. */ readonly format: DataGridCellFormat}DataGridFormattingRowPreset (Extended from index.ts)
Section titled “DataGridFormattingRowPreset (Extended from index.ts)”interface DataGridFormattingRowPreset { /** Format applied to cells in the row. */ readonly format: DataGridCellFormat}DataGridFormattingCellPreset
Section titled “DataGridFormattingCellPreset”interface DataGridFormattingCellPreset { /** Physical range receiving the declarative format. */ readonly range: PhysicalCellRange; readonly format: DataGridCellFormat}DataGridFormattingRuntimeColumnState (Extended from index.ts)
Section titled “DataGridFormattingRuntimeColumnState (Extended from index.ts)”One persisted runtime formatting operation for a complete column.
interface DataGridFormattingRuntimeColumnState { /** `null` preserves an explicit Clear formatting operation. */ readonly format: DataGridCellFormat | null; /** Monotonic operation order used for cell/row/column precedence. */ readonly revision: number}DataGridFormattingRuntimeRowState (Extended from index.ts)
Section titled “DataGridFormattingRuntimeRowState (Extended from index.ts)”One persisted runtime formatting operation for a complete row.
interface DataGridFormattingRuntimeRowState { /** `null` preserves an explicit Clear formatting operation. */ readonly format: DataGridCellFormat | null; /** Monotonic operation order used for row/column/cell precedence. */ readonly revision: number}DataGridFormattingRuntimeCellState (Extended from index.ts)
Section titled “DataGridFormattingRuntimeCellState (Extended from index.ts)”One persisted runtime formatting operation for a physical cell.
interface DataGridFormattingRuntimeCellState { readonly rowType?: DimensionRows; readonly colType?: DimensionCols; /** `null` preserves an explicit Clear formatting operation. */ readonly format: DataGridCellFormat | null; /** Monotonic operation order used for cell/row/column precedence. */ readonly revision: number}DataGridFormattingRuntimeState
Section titled “DataGridFormattingRuntimeState”Versioned coordinate state for formats created through the dialog or plugin API.
interface DataGridFormattingRuntimeState { readonly version: 3; readonly revision: number; readonly columns: readonly DataGridFormattingRuntimeColumnState[]; readonly rows: readonly DataGridFormattingRuntimeRowState[]; readonly cells: readonly DataGridFormattingRuntimeCellState[]}DataGridFormattingChangeSource
Section titled “DataGridFormattingChangeSource”Why a runtime formatting state changed.
/** Why a runtime formatting state changed. */export type DataGridFormattingChangeSource = | 'apply' | 'clear' | 'set-state' | 'history' | 'autofill' | 'structure';DataGridFormattingChangeEvent
Section titled “DataGridFormattingChangeEvent”Complete application-facing payload emitted after a runtime formatting change.
interface DataGridFormattingChangeEvent { /** Complete state to persist. */ readonly state: DataGridFormattingRuntimeState; /** Complete state before this operation, used by HistoryPlugin. */ readonly previousState: DataGridFormattingRuntimeState; /** Operation that produced the state. */ readonly source: DataGridFormattingChangeSource}DataGridFormattingHistoryRuntime
Section titled “DataGridFormattingHistoryRuntime”Runtime contract used by HistoryPlugin to replay formatting entries.
interface DataGridFormattingHistoryRuntime { applyHistoryState(state: DataGridFormattingRuntimeState): boolean; /** @internal Prevent coordinate remapping while a structural snapshot is replayed. */ beginHistoryStructureReplay?(): void; /** @internal Resume ordinary structural coordinate reconciliation. */ endHistoryStructureReplay?(): void; /** @internal Flush a partially applied structural context-menu transaction. */ flushPendingStructuralTransaction?(transactionId: number): void}DataGridFormattingPresetState
Section titled “DataGridFormattingPresetState”Declarative formats and optional runtime state assigned through
grid.dataGridFormatting. Reassign the property to replace presets
reactively. Applications own persistence and can restore a state received
from datagridformattingchange through the state property.
Cell presets are physical ranges, so replacing source objects does not require row identity configuration.
interface DataGridFormattingPresetState { readonly columns?: readonly DataGridFormattingColumnPreset[]; readonly rows?: readonly DataGridFormattingRowPreset[]; readonly cells?: readonly DataGridFormattingCellPreset[]; /** Runtime Apply and Clear operations previously emitted by the plugin. */ readonly state?: DataGridFormattingRuntimeState}DataGridFormattingResolvedSelection
Section titled “DataGridFormattingResolvedSelection”@internal Model-backed target resolved from coordinates or UI selection.
interface DataGridFormattingResolvedSelection { /** Whether the operation targets explicit cells, complete rows, or complete columns. */ readonly scope: 'cells' | 'rows' | 'columns'; /** Columns included in the operation. */ readonly columns: readonly ColumnRegular[]; /** Exact cell targets. Required when `scope` is `cells`. */ readonly cells: readonly DataGridFormattingCell<T>[]; /** Useful for type resolution and dialog preview in column scope. */ readonly rows: readonly T[]; /** Physical row addresses retained for complete-row storage operations. */ readonly rowAddresses?: readonly Required<PhysicalRowAddress>[]}DataGridFormattingCell
Section titled “DataGridFormattingCell”interface DataGridFormattingCell { /** Source row containing the cell. */ readonly model: T; /** Column containing the cell. */ readonly column: ColumnRegular; /** Body or pinned-row dimension containing the cell. */ readonly rowType?: DimensionRows; /** Physical address resolved for coordinate-owned formatting storage. */ readonly address?: PhysicalCellAddress}DataGridFormattingConfig (Extended from index.ts)
Section titled “DataGridFormattingConfig (Extended from index.ts)”interface DataGridFormattingConfig { /** Overrides automatic value-kind inference for the complete selection. */ readonly resolveValueKind?: ( selection: DataGridFormattingResolvedSelection<T>, ) => DataGridFormattingValueKind; /** Maps application column-type names to formatting value kinds. */ readonly columnTypeKinds?: Readonly<Record<string, DataGridFormattingValueKind>>; /** Context-menu surfaces allowed to create formatting selections. */ readonly scopes?: readonly ('cell' | 'columnHeader')[]; /** * Stable application identity used to retain formatting when a * length-changing source update replaces row objects immutably. */ readonly resolveStructuralRowIdentity?: ( model: T, context: { readonly row: number; readonly rowType: DimensionRows }, ) => unknown; /** Advanced visual formats and format-resolved editors. `false` disables them. */ readonly advancedFormats?: false | DataGridAdvancedFormatsConfig}DataGridFormattingLocaleText
Section titled “DataGridFormattingLocaleText”interface DataGridFormattingLocaleText { readonly title: string; readonly close: string; readonly description: string; readonly selectionSummary: string; readonly selectionCells: string; readonly selectionColumns: string; readonly valueSection: string; readonly advancedSection: string; readonly advancedNone: string; readonly advancedDescription: string; readonly automaticDescription: string; readonly numberSection: string; readonly category: string; readonly locale: string; readonly browserDefault: string; readonly decimals: string; readonly grouping: string; readonly currency: string; readonly negativeNumbers: string; readonly dateStyle: string; readonly timeStyle: string; readonly custom: string; readonly formatCode: string; readonly invalidFormatCode: string; readonly fontSection: string; readonly typographySection: string; readonly colorsSection: string; readonly fontFamily: string; readonly defaultFont: string; readonly fontSize: string; readonly bold: string; readonly italic: string; readonly underline: string; readonly strike: string; readonly textColor: string; readonly fillColor: string; readonly useTextColor: string; readonly useFillColor: string; readonly defaultColor: string; readonly noFill: string; readonly customColor: string; readonly customColorHex: string; readonly invalidColor: string; readonly colorLabels: Readonly<Record<string, string>>; /** Labels for registry groups, keyed by the definition's `group` value. */ readonly advancedGroupLabels: Readonly<Record<string, string>>; /** Advanced-format names keyed by stable format id. */ readonly advancedFormatLabels: Readonly<Record<string, string>>; /** Advanced-format descriptions keyed by stable format id. */ readonly advancedFormatDescriptions: Readonly<Record<string, string>>; /** Control labels keyed as `<format id>.<control key>`. */ readonly advancedControlLabels: Readonly<Record<string, string>>; /** Select-option labels keyed as `<format id>.<control key>.<option value>`. */ readonly advancedOptionLabels: Readonly<Record<string, string>>; readonly expandSection: string; readonly collapseSection: string; readonly alignmentSection: string; readonly horizontal: string; readonly vertical: string; readonly wrap: string; readonly borderSection: string; readonly borderStyle: string; readonly borderColor: string; readonly preview: string; readonly previewOriginal: string; readonly previewFormatted: string; readonly previewHint: string; readonly clear: string; readonly cancel: string; readonly apply: string; readonly textExample: string; readonly presetLabels: Record<DataGridValueFormatPreset, string>; readonly optionLabels: DataGridFormattingOptionLocaleText; readonly dataEditor: DataGridFormattingDataEditorLocaleText}DataGridFormattingDataEditorLocaleText
Section titled “DataGridFormattingDataEditorLocaleText”export type DataGridFormattingDataEditorLocaleText = StructuredDataEditorLocaleText;DataGridFormattingOptionLocaleText
Section titled “DataGridFormattingOptionLocaleText”interface DataGridFormattingOptionLocaleText { readonly automatic: string; readonly left: string; readonly center: string; readonly right: string; readonly top: string; readonly middle: string; readonly bottom: string; readonly none: string; readonly solid: string; readonly dashed: string; readonly dotted: string; readonly double: string; readonly short: string; readonly medium: string; readonly long: string; readonly full: string; readonly negativeMinus: string; readonly negativeRed: string; readonly negativeParentheses: string}DataGridFormattingDialogConfig
Section titled “DataGridFormattingDialogConfig”interface DataGridFormattingDialogConfig { /** Right-align numeric values and numeric presets when horizontal alignment is automatic. Defaults to true. */ readonly autoAlignNumericValues?: boolean; readonly locale?: string; /** Locale choices shown in the Format Cells dialog. Common US and European locales are used by default. */ readonly locales?: readonly string[]; readonly currencies?: readonly string[]; readonly fontFamilies?: readonly string[]; readonly localeText?: Partial<Omit< DataGridFormattingLocaleText, | 'presetLabels' | 'optionLabels' | 'colorLabels' | 'advancedGroupLabels' | 'advancedFormatLabels' | 'advancedFormatDescriptions' | 'advancedControlLabels' | 'advancedOptionLabels' | 'dataEditor' >> & { readonly presetLabels?: Partial<DataGridFormattingLocaleText['presetLabels']>; readonly optionLabels?: Partial<DataGridFormattingOptionLocaleText>; readonly colorLabels?: Readonly<Record<string, string>>; readonly advancedGroupLabels?: Readonly<Record<string, string>>; readonly advancedFormatLabels?: Readonly<Record<string, string>>; readonly advancedFormatDescriptions?: Readonly<Record<string, string>>; readonly advancedControlLabels?: Readonly<Record<string, string>>; readonly advancedOptionLabels?: Readonly<Record<string, string>>; readonly dataEditor?: Partial<DataGridFormattingDataEditorLocaleText>; }}DataGridFormattingDialogOpenOptions (Extended from index.ts)
Section titled “DataGridFormattingDialogOpenOptions (Extended from index.ts)”interface DataGridFormattingDialogOpenOptions { readonly selection: DataGridFormattingResolvedSelection<T>; readonly initialValue?: DataGridCellFormat; readonly sampleValue?: unknown; readonly valueKind: DataGridFormattingValueKind; /** False when selected columns cannot safely replace their visual value presentation. */ readonly valueFormatting?: boolean; /** Resolved compatible advanced-format catalog for this selection. */ readonly advancedFormatDefinitions?: readonly DataGridAdvancedFormatDefinition[]; readonly onApply: (format: DataGridCellFormat) => void; readonly onClear: () => void}createAutofillFormattingEntries
Section titled “createAutofillFormattingEntries”export function createAutofillFormattingEntries({ providers, owner, oldRange, newRange, rowType, colType,}: { providers: PluginProviders; owner: Pick<AutofillFormattingOwner, 'getFormat'>; oldRange: RangeArea; newRange: RangeArea; rowType: DimensionRows; colType: DimensionCols;}): AutofillFormattingBatchEntry[];AutofillFormattingBatchEntry
Section titled “AutofillFormattingBatchEntry”interface AutofillFormattingBatchEntry { readonly target: DataGridFormattingTarget; readonly format: DataGridCellFormat | undefined}AutofillFormattingController
Section titled “AutofillFormattingController”Couples accepted range edits to formatting without moving value generation out of Core or AutoFillPlugin.
class AutofillFormattingController { destroy(): void;}applyDataGridFormattingRender
Section titled “applyDataGridFormattingRender”Compose formatting into one core before-cell-render schema.
export function applyDataGridFormattingRender<T extends DataType>( event: CustomEvent<HTMLRevogrDataElementEventMap['beforecellrender']>, context: DataGridFormattingRenderContext<T>,): void;DataGridFormattingRenderContext
Section titled “DataGridFormattingRenderContext”interface DataGridFormattingRenderContext { readonly providers: PluginProviders; readonly config: Readonly<DataGridFormattingConfig<T>>; readonly advancedFormatDefinitions: readonly DataGridAdvancedFormatDefinition[]; readonly resolveCellValue: ( model: T, column: ColumnRegular, rowType?: DimensionRows, value?: unknown, ) => unknown; readonly resolveFormat: ( address: PhysicalCellAddress, column?: ColumnRegular, model?: T, value?: unknown, includeRenderer?: boolean, ) => DataGridCellFormat | undefined; readonly resolveAuthoredFormat: ( column: ColumnRegular, model?: T, value?: unknown, rowType?: DimensionRows, includeRenderer?: boolean, ) => DataGridCellFormat | undefined}StoredDataGridFormat
Section titled “StoredDataGridFormat”interface StoredDataGridFormat { readonly revision: number; readonly value?: DataGridCellFormat}DataGridFormattingStructuralRemapResult
Section titled “DataGridFormattingStructuralRemapResult”interface DataGridFormattingStructuralRemapResult { readonly runtimeChanged: boolean; readonly presetsChanged: boolean}resolveDataGridFormattingSelection
Section titled “resolveDataGridFormattingSelection”Resolve public physical coordinates into the plugin’s model-backed target.
export function resolveDataGridFormattingSelection<T extends DataType>( target: DataGridFormattingTarget, providers: PluginProviders,): DataGridFormattingResolvedSelection<T> | undefined;expandPhysicalColumnSelection
Section titled “expandPhysicalColumnSelection”Expand and deduplicate complete-column coordinate ranges.
export function expandPhysicalColumnSelection( target: Extract<DataGridFormattingTarget, { scope: 'columns' }>,): Required<PhysicalColumnAddress>[];expandPhysicalRowSelection
Section titled “expandPhysicalRowSelection”Expand and deduplicate complete-row coordinate ranges.
export function expandPhysicalRowSelection( target: Extract<DataGridFormattingTarget, { scope: 'rows' }>,): Required<PhysicalRowAddress>[];resolvedFormattingSelectionToTarget
Section titled “resolvedFormattingSelectionToTarget”Convert an internal model-backed UI selection to the public coordinate target.
export function resolvedFormattingSelectionToTarget<T extends DataType>( selection: DataGridFormattingResolvedSelection<T>, providers: PluginProviders,): DataGridFormattingTarget | undefined;expandPhysicalFormattingSelection
Section titled “expandPhysicalFormattingSelection”Expand and deduplicate physical ranges without consulting current grid data.
export function expandPhysicalFormattingSelection( target: DataGridFormattingSelection,): Required<PhysicalCellAddress>[];resolvePhysicalFormattingCell
Section titled “resolvePhysicalFormattingCell”Resolve a physical address to its current model and column context.
export function resolvePhysicalFormattingCell<T extends DataType>( providers: PluginProviders, address: PhysicalCellAddress,): DataGridFormattingCell<T> | undefined;resolvePhysicalFormattingAddress
Section titled “resolvePhysicalFormattingAddress”Resolve transient render/editor models to their current physical source address.
export function resolvePhysicalFormattingAddress<T extends DataType>( providers: PluginProviders, model: T, column: ColumnRegular, rowType: DimensionRows = 'rgRow', colType?: DimensionCols,): PhysicalCellAddress | undefined;resolvePhysicalFormattingColumn
Section titled “resolvePhysicalFormattingColumn”Resolve a column object to its physical source address.
export function resolvePhysicalFormattingColumn( providers: PluginProviders, column: ColumnRegular, preferredType?: DimensionCols,): PhysicalColumnAddress | undefined;resolvePhysicalFormattingRow
Section titled “resolvePhysicalFormattingRow”Resolve a row object to its physical source address.
export function resolvePhysicalFormattingRow<T extends DataType>( providers: PluginProviders, model: T, preferredType?: DimensionRows,): PhysicalRowAddress | undefined;visibleCellToPhysicalFormattingAddress
Section titled “visibleCellToPhysicalFormattingAddress”Translate a rendered virtual cell into a physical address.
export function visibleCellToPhysicalFormattingAddress( providers: PluginProviders, { row, column, rowType = 'rgRow', colType = 'rgCol', }: PhysicalCellAddress,): PhysicalCellAddress | undefined;visibleRangeToPhysicalFormattingSelection
Section titled “visibleRangeToPhysicalFormattingSelection”Convert one visible range into physical formatting coordinates.
export function visibleRangeToPhysicalFormattingSelection( providers: PluginProviders, range: { readonly x: number; readonly y: number; readonly x1: number; readonly y1: number; readonly rowType?: DimensionRows; readonly colType?: DimensionCols; },): DataGridFormattingSelection;AdvancedFormatPanel
Section titled “AdvancedFormatPanel”export function AdvancedFormatPanel({ definitions, presentation, locale, localeText, onChange,}: { readonly definitions: readonly DataGridAdvancedFormatDefinition[]; readonly presentation?: DataGridCellPresentation; readonly locale: DataGridFormattingLocaleText; readonly localeText?: DataGridFormattingDialogConfig['localeText']; readonly onChange: (value: DataGridCellPresentation | undefined) => void;});AlignmentSection
Section titled “AlignmentSection”export function AlignmentSection({ appearance, locale, onChange }: SectionProps);AppearancePanel
Section titled “AppearancePanel”export function AppearancePanel({ appearance, sections, options, locale, onChange }: { readonly appearance: DataGridCellAppearance; readonly sections?: DataGridAdvancedFormatAppearanceSections; readonly options: DataGridFormattingDialogOpenOptions; readonly locale: DataGridFormattingLocaleText; readonly onChange: (value: DataGridCellAppearance) => void;});BordersSection
Section titled “BordersSection”export function BordersSection({ appearance, locale, onChange }: SectionProps);FormattingColorPicker
Section titled “FormattingColorPicker”export function FormattingColorPicker({ label, value, defaultLabel, customLabel, customHexLabel, invalidColor, colorLabels, optional = true, onChange,}: { readonly label: string; readonly value?: string; readonly defaultLabel: string; readonly customLabel: string; readonly customHexLabel: string; readonly invalidColor: string; readonly colorLabels: Readonly<Record<string, string>>; readonly optional?: boolean; readonly onChange: (value: string | undefined) => void;});normalizeHexColor
Section titled “normalizeHexColor”export function normalizeHexColor(value: string | undefined): string | undefined;ColorsSection
Section titled “ColorsSection”export function ColorsSection({ appearance, locale, onChange }: SectionProps);useControlTooltip
Section titled “useControlTooltip”export function useControlTooltip(text: string);ControlTooltip
Section titled “ControlTooltip”export function ControlTooltip({ id, text, visible }: { readonly id: string; readonly text: string; readonly visible: boolean;});FormatPreview
Section titled “FormatPreview”export function FormatPreview({ sampleValue, format, locale, advancedFormatDefinitions, autoAlignNumericValues,}: { readonly sampleValue: unknown; readonly format: DataGridCellFormat; readonly locale: DataGridFormattingLocaleText; readonly advancedFormatDefinitions?: readonly DataGridAdvancedFormatDefinition[]; readonly autoAlignNumericValues: boolean;});FormatIcon
Section titled “FormatIcon”export function FormatIcon({ icon, className = 'rv-format-icon' }: { readonly icon: string; readonly className?: string;});FORMAT_ICONS
Section titled “FORMAT_ICONS”FORMAT_ICONS: { readonly accounting: string; readonly alignCenter: string; readonly alignLeft: string; readonly alignRight: string; readonly arrowLeft: string; readonly arrowRight: string; readonly automatic: string; readonly ban: string; readonly bold: string; readonly border: string; readonly calendar: string; readonly chevronDown: string; readonly clock: string; readonly currency: string; readonly ellipsis: string; readonly eraser: string; readonly fill: string; readonly italic: string; readonly number: string; readonly palette: string; readonly percent: string; readonly scientific: string; readonly sliders: string; readonly strike: string; readonly text: string; readonly underline: string; readonly verticalBottom: string; readonly verticalMiddle: string; readonly verticalTop: string; readonly wrap: string; };ADVANCED_FORMAT_ICONS
Section titled “ADVANCED_FORMAT_ICONS”ADVANCED_FORMAT_ICONS: { readonly progressLine: string; readonly progressWithValue: string; readonly circularProgress: string; readonly heatmap: string; readonly rating: string; readonly change: string; readonly threshold: string; readonly thumbs: string; readonly badge: string; readonly sparkline: string; readonly bar: string; readonly pie: string; readonly timeline: string; readonly avatar: string; readonly avatarWithText: string; readonly summaryPercentage: string; readonly summaryAggregate: string; };InspectorSection
Section titled “InspectorSection”export function InspectorSection({ title, icon, locale, open = false, children,}: { readonly title: string; readonly icon: string; readonly locale: DataGridFormattingLocaleText; readonly open?: boolean; readonly children: ComponentChildren;});resolveDataGridFormattingLocaleOptions
Section titled “resolveDataGridFormattingLocaleOptions”export function resolveDataGridFormattingLocaleOptions( configuredLocales?: readonly string[], selectedLocale?: string,): readonly DataGridFormattingLocaleOption[];DataGridFormattingLocaleOption
Section titled “DataGridFormattingLocaleOption”interface DataGridFormattingLocaleOption { readonly value: string; readonly label: string}DEFAULT_DATA_GRID_FORMATTING_LOCALES
Section titled “DEFAULT_DATA_GRID_FORMATTING_LOCALES”DEFAULT_DATA_GRID_FORMATTING_LOCALES: readonly string[];formatLocaleTemplate
Section titled “formatLocaleTemplate”export function formatLocaleTemplate( template: string, values: Readonly<Record<string, string>>,): string;DataGridFormattingEditorRuntime
Section titled “DataGridFormattingEditorRuntime”Owns editor proxy installation and effective editor construction.
class DataGridFormattingEditorRuntime { install(collection: ColumnCollection): void;
installCurrent(): void;}SegmentedControl
Section titled “SegmentedControl”export function SegmentedControl<Value extends string>({ value, options, ariaLabel, onChange,}: { readonly value: Value; readonly options: readonly SegmentedOption<Value>[]; readonly ariaLabel: string; readonly onChange: (value: Value) => void;});ToggleIconButton
Section titled “ToggleIconButton”export function ToggleIconButton({ value, label, icon, onChange,}: { readonly value: boolean; readonly label: string; readonly icon: string; readonly onChange: (value: boolean) => void;});SegmentedOption
Section titled “SegmentedOption”interface SegmentedOption { readonly value: Value; readonly label: string; readonly icon: string}TypographySection
Section titled “TypographySection”export function TypographySection({ appearance, options, locale, onChange }: SectionProps);SectionProps
Section titled “SectionProps”interface SectionProps { readonly appearance: DataGridCellAppearance; readonly options: DataGridFormattingDialogOpenOptions; readonly locale: DataGridFormattingLocaleText; readonly onChange: (value: Partial<DataGridCellAppearance>) => void}ValueFormatPanel
Section titled “ValueFormatPanel”export function ValueFormatPanel({ value, presentation, options, locale, onChange, onValidityChange, onPresentationChange,}: { readonly value: DataGridValueFormat; readonly presentation?: DataGridCellPresentation; readonly options: DataGridFormattingDialogOpenOptions; readonly locale: DataGridFormattingLocaleText; readonly onChange: (value: DataGridValueFormat) => void; readonly onValidityChange: (valid: boolean) => void; readonly onPresentationChange: (value: DataGridCellPresentation | undefined) => void;});ValueFormatPresets
Section titled “ValueFormatPresets”export function ValueFormatPresets({ value, formatLocale, currency, locale, advancedAvailable, onChange,}: { readonly value: FormatCategory; readonly formatLocale?: string; readonly currency?: string; readonly locale: DataGridFormattingLocaleText; readonly advancedAvailable: boolean; readonly onChange: (value: FormatCategory) => void;});FormatCategory
Section titled “FormatCategory”export type FormatCategory = DataGridValueFormatPreset | 'custom' | 'advanced';resolveDataGridHorizontalAlignment
Section titled “resolveDataGridHorizontalAlignment”Chooses the horizontal alignment that a formatted cell should display.
Explicit left, center, and right appearance values always win. When
alignment is omitted or automatic, ordinary numeric values and numeric
presets resolve to right. An active advanced presentation keeps control of
its own layout unless the user explicitly selected an alignment.
This function only calculates the effective value. It does not modify the cell format, source value, column, or persisted formatting state.
@param options Cell value and formatting context used to resolve alignment.
@returns The alignment to apply, or undefined when the existing cell or
presentation layout should remain unchanged.
export function resolveDataGridHorizontalAlignment( options: { /** Raw cell value before display formatting. */ readonly value: unknown; /** Effective cell format, including value preset and authored appearance. */ readonly format?: DataGridCellFormat; /** Whether omitted or Automatic alignment may be derived from numeric data. */ readonly autoAlignNumericValues?: boolean; /** True when an active advanced renderer owns the cell's visual layout. */ readonly hasEffectivePresentation?: boolean; },): DataGridHorizontalAlignment | undefined;isDataGridNumericValue
Section titled “isDataGridNumericValue”Reports whether a raw cell value participates in automatic numeric alignment.
Finite JavaScript numbers and all bigint values are numeric. NaN, positive
or negative infinity, numeric strings, and boxed numbers are intentionally
excluded so their existing grid alignment is preserved.
@param value Raw source value to classify.
@returns true when automatic numeric alignment may apply to the value.
export function isDataGridNumericValue(value: unknown): boolean;structuralAddressKey
Section titled “structuralAddressKey”export function structuralAddressKey<T extends string>(type: T, index: number): string;createRowStructuralMap
Section titled “createRowStructuralMap”Match retained records by identity, including duplicate references, then preserve coordinates for a same-size immutable source replacement.
export function createRowStructuralMap( previous: Readonly<Record<DimensionRows, readonly DataType[]>>, next: Readonly<Record<DimensionRows, readonly DataType[]>>, fallbackIdentity?: ( row: DataType, address: StructuralAddress<DimensionRows>, ) => unknown,): StructuralAddressMap<DimensionRows>;createColumnStructuralMap
Section titled “createColumnStructuralMap”Match columns by identity and fall back to their stable data property.
export function createColumnStructuralMap( previous: Readonly<Record<DimensionCols, readonly ColumnRegular[]>>, next: Readonly<Record<DimensionCols, readonly ColumnRegular[]>>,): StructuralAddressMap<DimensionCols>;StructuralAddress
Section titled “StructuralAddress”interface StructuralAddress { readonly type: T; readonly index: number}StructuralAddressMap
Section titled “StructuralAddressMap”export type StructuralAddressMap<T extends string> = ReadonlyMap< string, StructuralAddress<T>>;FORMATTING_ROW_TYPES
Section titled “FORMATTING_ROW_TYPES”FORMATTING_ROW_TYPES: readonly DimensionRows[];FORMATTING_COLUMN_TYPES
Section titled “FORMATTING_COLUMN_TYPES”FORMATTING_COLUMN_TYPES: readonly DimensionCols[];normalizeFormattingCellAddress
Section titled “normalizeFormattingCellAddress”export function normalizeFormattingCellAddress( address: PhysicalCellAddress,): Required<PhysicalCellAddress>;normalizeFormattingColumnAddress
Section titled “normalizeFormattingColumnAddress”export function normalizeFormattingColumnAddress( address: PhysicalColumnAddress,): Required<PhysicalColumnAddress>;normalizeFormattingRowAddress
Section titled “normalizeFormattingRowAddress”export function normalizeFormattingRowAddress( address: PhysicalRowAddress,): Required<PhysicalRowAddress>;formattingCellAddressKey
Section titled “formattingCellAddressKey”export function formattingCellAddressKey(address: PhysicalCellAddress): string;formattingColumnAddressKey
Section titled “formattingColumnAddressKey”export function formattingColumnAddressKey(address: PhysicalColumnAddress): string;formattingRowAddressKey
Section titled “formattingRowAddressKey”export function formattingRowAddressKey(address: PhysicalRowAddress): string;DEFAULT_FORMATTING_ROW_TYPE
Section titled “DEFAULT_FORMATTING_ROW_TYPE”DEFAULT_FORMATTING_ROW_TYPE: DimensionRows;DEFAULT_FORMATTING_COLUMN_TYPE
Section titled “DEFAULT_FORMATTING_COLUMN_TYPE”DEFAULT_FORMATTING_COLUMN_TYPE: DimensionCols;evaluateDataGridFormatCode
Section titled “evaluateDataGridFormatCode”export function evaluateDataGridFormatCode( parsed: ParsedDataGridFormatCode, value: unknown, locale?: string,): DataGridFormattedCodeValue;classifyDataGridFormatCode
Section titled “classifyDataGridFormatCode”export function classifyDataGridFormatCode( parsed: ParsedDataGridFormatCode,): DataGridFormattedCodeValue['kind'];parseDataGridFormatCode
Section titled “parseDataGridFormatCode”export function parseDataGridFormatCode(code: string): ParsedDataGridFormatCode;importDataGridExcelClipboardDisplayValue
Section titled “importDataGridExcelClipboardDisplayValue”Convert display-only Excel HTML text into a canonical typed value.
export function importDataGridExcelClipboardDisplayValue( displayText: string, format?: DataGridCellFormat,): unknown;normalizeExcelLanguage
Section titled “normalizeExcelLanguage”export function normalizeExcelLanguage(value?: string): string | undefined;normalizeExcelNamedNumberFormat
Section titled “normalizeExcelNamedNumberFormat”export function normalizeExcelNamedNumberFormat( value: string | undefined, language?: string,): NormalizedExcelNumberFormat;NormalizedExcelNumberFormat
Section titled “NormalizedExcelNumberFormat”interface NormalizedExcelNumberFormat { readonly formatCode?: string; readonly locale?: string}