import { Plot } from "../../value/VPlot.js"; import { SqValueContext } from "../SqValueContext.js"; import { SqPlotValue } from "./index.js"; import { SqDistribution, SqSampleSetDistribution } from "./SqDistribution/index.js"; import { SqLambda } from "./SqLambda.js"; import { SqScale } from "./SqScale.js"; type LabeledSqDistribution = { name?: string; distribution: SqDistribution; }; export declare function wrapPlot(value: Plot, context?: SqValueContext): SqPlot; declare abstract class SqAbstractPlot { protected _value: Extract; context?: SqValueContext | undefined; abstract tag: T; constructor(_value: Extract, context?: SqValueContext | undefined); toString(): string; get asValue(): SqPlotValue; get title(): string | undefined; } export declare class SqDistributionsPlot extends SqAbstractPlot<"distributions"> { tag: "distributions"; static create({ distribution, xScale, yScale, showSummary, title, }: { distribution: SqDistribution; xScale: SqScale; yScale: SqScale; showSummary: boolean; title?: string; }): SqDistributionsPlot; get distributions(): LabeledSqDistribution[]; get showSummary(): boolean; get xScale(): SqScale; get yScale(): SqScale; } export declare class SqNumericFnPlot extends SqAbstractPlot<"numericFn"> { tag: "numericFn"; private createdProgrammatically; static create({ fn, xScale, yScale, xPoints, title, }: { fn: SqLambda; xScale: SqScale; yScale: SqScale; xPoints?: number[]; title?: string; }): SqNumericFnPlot; get fn(): SqLambda; get xScale(): SqScale; get yScale(): SqScale; xPoints(params: { min?: number; max?: number; requestedXPoints?: number[]; }): number[]; toString(): string; } export declare class SqDistFnPlot extends SqAbstractPlot<"distFn"> { tag: "distFn"; private createdProgrammatically; static create({ fn, xScale, yScale, distXScale, title, xPoints, }: { fn: SqLambda; xScale: SqScale; yScale: SqScale; distXScale: SqScale; title?: string; xPoints?: number[]; }): SqDistFnPlot; get fn(): SqLambda; get xScale(): SqScale; get yScale(): SqScale; get distXScale(): SqScale; xPoints(params: { min?: number; max?: number; requestedXPoints?: number[]; }): number[]; toString(): string; } export declare class SqScatterPlot extends SqAbstractPlot<"scatter"> { tag: "scatter"; xDist(): SqSampleSetDistribution; yDist(): SqSampleSetDistribution; get xScale(): SqScale | undefined; get yScale(): SqScale | undefined; static zipToPoints(xDist: SqSampleSetDistribution, yDist: SqSampleSetDistribution): { x: number; y: number; }[]; } export declare class SqRelativeValuesPlot extends SqAbstractPlot<"relativeValues"> { tag: "relativeValues"; get ids(): readonly string[]; get fn(): SqLambda; } export type SqPlot = SqDistributionsPlot | SqNumericFnPlot | SqDistFnPlot | SqScatterPlot | SqRelativeValuesPlot; export {}; //# sourceMappingURL=SqPlot.d.ts.map