interface AxisScaleOptions { minTickCount?: number; maxTickCount?: number; stepCandidates?: number[]; acceptNegative?: boolean; minNegative?: number; acceptStepIsTypeFloat?: boolean; } interface AxisScaleResult { stepSize: number; max: number; min: number; tickAmount: number; } /** * Tính toán smart axis scale cho biểu đồ * * @param maxData - Giá trị tối đa của dữ liệu * @param options - Các tùy chọn cấu hình axis scale * @returns Cấu hình axis scale bao gồm stepSize, max, min, tickAmount * * @throws {Error} INVALID_NEGATIVE_DATA - khi maxData < 0 mà acceptNegative = false * @throws {Error} MISSING_MIN_NEGATIVE - khi acceptNegative = true nhưng thiếu minNegative * @throws {Error} INVALID_RANGE - khi maxData < minNegative * @throws {Error} INVALID_MIN_NEGATIVE - khi minNegative >= 0 * * @example * ```typescript * const result = getSmartAxisScale(100, { minTickCount: 5, maxTickCount: 10 }); * // returns { stepSize: 20, max: 120, min: 0, tickAmount: 6 } * ``` */ export declare const getSmartAxisScale: (originalMaxData: number, options?: AxisScaleOptions) => AxisScaleResult; export {};