ag-grid-community
Version:
Advanced Data Grid / Data Table supporting Javascript / Typescript / React / Angular / Vue
56 lines (55 loc) • 3.09 kB
TypeScript
import type { ErrorId } from './errorMessages/errorText';
import type { Severity } from './logging';
/**
* Development-time configuration for the {@link ValidationModule}. Configuration is global, not
* per-grid: the most recent `enableDevValidations`/`ValidationModule.with` call wins and applies to
* every grid on the page.
*/
export interface DevValidationOptions {
/**
* The diagnostic severities to turn into thrown errors instead of console messages, so problems fail
* fast and loudly rather than scrolling past unnoticed. This gives you a tight feedback loop for
* automated workflows — e.g. e2e runs or AI-assisted development — where a hard failure is surfaced
* and acted on immediately.
*
* Each listed severity is thrown on independently — e.g. `['error']` throws on errors only,
* `['deprecation', 'error']` throws on deprecations and errors but not warnings, and
* `['deprecation', 'warning', 'error']` throws on everything.
*
* Defaults to `[]` (never throws).
*
* Caveat: a diagnostic raised while a grid is still initialising throws part-way through its setup,
* leaving that grid partially built and unusable. Use this with harnesses that recreate the grid on
* failure — not to carry on with the same instance after a throw — and never in production.
*/
throwOn?: Severity[];
/**
* The diagnostic severities to render in a development overlay over the grid, mirroring
* {@link throwOn}. Each listed severity is shown independently — e.g. `['error']` shows errors only,
* and `['deprecation', 'warning', 'error']` shows everything.
*
* Defaults to `['deprecation', 'warning', 'error']` (shows everything). Pass `[]` to show nothing.
*/
showOverlayOn?: Severity[];
/**
* Error ids to ignore — for diagnostics you have reviewed and accepted. A suppressed id is kept out
* of the overlay and is never thrown by {@link throwOn}, but is still logged to the console once.
* Defaults to none.
*/
suppress?: ErrorId[];
}
export declare function _getDevOverlaySeverities(): readonly Severity[];
/**
* Resolves the supplied options against the defaults and pushes the resulting diagnostic configuration
* into the logging layer. Each call fully replaces the previous configuration — options left out reset
* to their defaults, so registering without options does not inherit an earlier `throwOn`/`showOverlayOn`.
* Always enables capture, since reaching here means the ValidationModule is active.
*/
export declare function _applyDevValidationConfig(options?: DevValidationOptions): void;
/**
* Turns on diagnostic capture without touching `throwOn`/`showOverlayOn`, so registering the ValidationModule
* directly (without {@link enableDevValidations} or `ValidationModule.with`) still buffers diagnostics
* for the overlay. Touching only capture means it cannot clobber options set by a `with` call, whatever
* the registration order.
*/
export declare function _enableDiagnosticCapture(): void;