import type { SkFont } from '@shopify/react-native-skia'; import type { CandlestickChartDataPoint, CandlestickChartLayoutItem } from './interfaces'; type NiceScaleResult = { min: number; max: number; tickSpacing: number; ticks: number[]; }; type CalculateVisibleScaleProps = { data: CandlestickChartDataPoint[]; startIndex: number; endIndex: number; maxTicks?: number; verticalPaddingRatio?: number; }; export declare const calculateNiceScale: (minValue: number, maxValue: number, maxTicks?: number) => NiceScaleResult; export declare const normalizeCandlestickData: (data: CandlestickChartDataPoint[]) => CandlestickChartDataPoint[]; export declare const calculateVisibleCandlestickScale: ({ data, startIndex, endIndex, maxTicks, verticalPaddingRatio, }: CalculateVisibleScaleProps) => { domainY: [number, number]; yAxisTicks: number[]; }; type BuildCandlestickLayoutProps = { data: CandlestickChartDataPoint[]; domainY: [number, number]; plotTop: number; plotBottom: number; candleWidth: number; spacing: number; bullishColor: string; bearishColor: string; contentPaddingLeft: number; }; export declare const buildCandlestickLayout: ({ data, domainY, plotTop, plotBottom, candleWidth, spacing, bullishColor, bearishColor, contentPaddingLeft, }: BuildCandlestickLayoutProps) => CandlestickChartLayoutItem[]; type ResolveCandlestickLastPriceLabelLayoutProps = { lastClose: number; canvasWidth: number; font: SkFont; hasYAxis: boolean; yAxisLabelAlignment: 'left' | 'right'; yAxisLabelOffsetX: number; yAxisLabelYOffset: number; yAxisLabelPadding: number; yAxisShouldDrawBackground: boolean; labelPaddingHorizontal?: number; labelPaddingVertical?: number; rightOffset?: number; formatLabel?: (value: number) => string; }; export type CandlestickLastPriceLabelLayout = { labelText: string; fontSize: number; labelX: number; labelWidth: number; labelHeight: number; textX: number; resolvedLabelYOffset: number; resolvedLabelPaddingHorizontal: number; resolvedLabelPaddingVertical: number; }; export declare const resolveCandlestickLastPriceLabelLayout: ({ lastClose, canvasWidth, font, hasYAxis, yAxisLabelAlignment, yAxisLabelOffsetX, yAxisLabelYOffset, yAxisLabelPadding, yAxisShouldDrawBackground, labelPaddingHorizontal, labelPaddingVertical, rightOffset, formatLabel, }: ResolveCandlestickLastPriceLabelLayoutProps) => CandlestickLastPriceLabelLayout; type CalculateCandlestickValueYProps = { value: number; domainY: [number, number]; plotTop: number; plotBottom: number; }; export declare const calculateCandlestickValueY: ({ value, domainY, plotTop, plotBottom, }: CalculateCandlestickValueYProps) => number; type CalculateCandlestickLastPriceLabelPositionProps = { lineY: number; plotTop: number; plotBottom: number; fontSize: number; labelYOffset: number; labelPaddingVertical: number; }; export declare const calculateCandlestickLastPriceLabelPosition: ({ lineY, plotTop, plotBottom, fontSize, labelYOffset, labelPaddingVertical, }: CalculateCandlestickLastPriceLabelPositionProps) => { labelAnchorY: number; textY: number; labelRectY: number; }; type Rect = { x: number; y: number; width: number; height: number; }; export declare const areCandlestickRectsOverlapping: (left: Rect, right: Rect, gap?: number) => boolean; export {}; //# sourceMappingURL=utils.d.ts.map