ag-charts-enterprise
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
56 lines (55 loc) • 2 kB
TypeScript
import { _ModuleSupport } from 'ag-charts-community';
import type { DistantObject } from 'ag-charts-core';
declare const Path: typeof _ModuleSupport.Path;
export declare class OhlcBaseNode<D = unknown> extends Path<D> implements DistantObject {
centerX: number;
__centerX: number;
y: number;
__y: number;
width: number;
__width: number;
height: number;
__height: number;
yOpen: number;
__yOpen: number;
yClose: number;
__yClose: number;
crisp: boolean;
__crisp: boolean;
/**
* High-performance static property setter that bypasses the decorator system entirely.
* Writes directly to backing fields (__propertyName) to avoid:
* - Decorator setter chains and equality checks
* - Multiple onChangeDetection calls per property
* - Object.keys() iteration in assignIfNotStrictlyEqual
* - Object allocation overhead
*
* A single markDirty() call at the end ensures the scene graph is properly invalidated.
* WARNING: Only use for hot paths where performance is critical and properties don't need
* individual change detection (e.g., when updating many nodes in a loop).
*/
setStaticProperties(centerX: number, width: number, y: number, height: number, yOpen: number, yClose: number, crisp: boolean): void;
protected computeBBox(): _ModuleSupport.BBox | undefined;
isPointInPath(x: number, y: number): boolean;
distanceSquared(x: number, y: number): number;
get midPoint(): {
x: number;
y: number;
};
protected alignedCoordinates(): {
centerX: number;
x0: number;
x1: number;
y0: number;
y1: number;
yOpen: number;
yClose: number;
};
protected executeStroke(ctx: _ModuleSupport.CanvasContext, path?: Path2D): void;
}
export declare class OhlcNode<D = unknown> extends OhlcBaseNode<D> {
strokeAlignment: number;
__strokeAlignment: number;
updatePath(): void;
}
export {};