@awsui/components-react
Version:
AWS UI is a collection of [React](https://reactjs.org/) components that help create intuitive, responsive, and accessible user experiences for web applications. It is developed by Amazon Web Services (AWS). This work is available under the terms of the [A
43 lines (42 loc) • 1.61 kB
TypeScript
import { ScaleContinuousNumeric, ScaleTime, ScaleBand } from 'd3-scale';
import { ScaleType, ScaleRange, ChartDomain, CategoricalDomain, DateDomain, NumericDomain } from './interfaces';
declare type InternalScale = ScaleContinuousNumeric<number, number> | ScaleBand<string> | ScaleTime<number, number>;
interface NumericD3Scale {
type: 'numeric';
scale: ScaleContinuousNumeric<number, number>;
}
interface TimeD3Scale {
type: 'time';
scale: ScaleTime<number, number>;
}
interface CategoricalD3Scale {
type: 'categorical';
scale: ScaleBand<string>;
}
export declare type D3Scale = NumericD3Scale | TimeD3Scale | CategoricalD3Scale;
export declare function createScale(type: ScaleType, domain: ChartDomain, range: ScaleRange): D3Scale;
export declare class ChartScale {
readonly scaleType: ScaleType;
readonly domain: ChartDomain;
readonly range: ScaleRange;
readonly scale: D3Scale;
readonly d3Scale: InternalScale;
constructor(scaleType: ScaleType, domain: ChartDomain, range: ScaleRange);
cloneScale(newScaleType?: ScaleType): ChartScale;
isNumeric(): this is {
d3Scale: ScaleContinuousNumeric<number, number>;
domain: NumericDomain;
};
isTime(): this is {
d3Scale: ScaleTime<number, number>;
domain: DateDomain;
};
isCategorical(): this is {
d3Scale: ScaleBand<string>;
domain: CategoricalDomain;
};
numericD3Scale(): ScaleContinuousNumeric<number, number> | null;
timeD3Scale(): ScaleTime<number, number> | null;
categoricalD3Scale(): ScaleBand<string> | null;
}
export {};