ag-charts-community
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
45 lines (44 loc) • 1.67 kB
TypeScript
import type { DistantObject, NearestResult } from 'ag-charts-core';
import { type BoxBounds } from 'ag-charts-core';
import { type Interpolating, interpolate } from '../util/interpolating';
type Padding = {
top: number;
left: number;
right: number;
bottom: number;
};
type ShrinkOrGrowPosition = 'top' | 'left' | 'bottom' | 'right' | 'vertical' | 'horizontal';
export declare class BBox implements BoxBounds, DistantObject, Interpolating<BBox> {
x: number;
y: number;
width: number;
height: number;
static readonly zero: BBox;
static readonly NaN: BBox;
static fromObject({ x, y, width, height }: BoxBounds): BBox;
static merge(boxes: Iterable<BoxBounds>): BBox;
static nearestBox(x: number, y: number, boxes: BBox[]): NearestResult<BBox>;
constructor(x: number, y: number, width: number, height: number);
toDOMRect(): DOMRect;
clone(): BBox;
equals(other: BBox): boolean;
containsPoint(x: number, y: number): boolean;
intersectsWith(other: BBox): boolean;
intersection(other: BBox): BBox | undefined;
collidesBBox(other: BBox): boolean;
computeCenter(): {
x: number;
y: number;
};
isFinite(): boolean;
distanceSquared(x: number, y: number): number;
shrink(amounts: Partial<Padding>): this;
shrink(amount: number, position?: ShrinkOrGrowPosition): this;
grow(amounts: Partial<Padding>): this;
grow(amount: number | Partial<Padding>): this;
grow(amount: number, position?: ShrinkOrGrowPosition): this;
private applyMargin;
translate(x: number, y: number): this;
[interpolate](other: BBox, d: number): BBox;
}
export {};