import { Culture } from "./formattingService"; export declare const NumberFormatComponentsDelimeter = ";"; export interface NumericFormatMetadata { format: string; hasLiterals: boolean; hasE: boolean; hasCommas: boolean; hasDots: boolean; hasPercent: boolean; hasPermile: boolean; precision: number; scale: number; partsPerScale: number; } export interface NumberFormatComponents { hasNegative: boolean; positive: string; negative: string; zero: string; } export declare function getNumericFormat(value: number, baseFormat: string): string; export declare function addDecimalsToFormat(baseFormat: string, decimals: number, trailingZeros: boolean): string; export declare function hasFormatComponents(format: string): boolean; export declare function getComponents(format: string): NumberFormatComponents; export declare function canFormat(value: any): value is number; export declare function isStandardFormat(format: string): boolean; export declare function format(value: number, format: string, culture: Culture): string; export declare function formatWithCustomOverride(value: number, format: string, nonScientificOverrideFormat: string, culture: Culture): string; /** * Returns the formatMetadata of the format * When calculating precision and scale, if format string of * positive[;negative;zero] => positive format will be used * @param (required) format - format string * @param (optional) calculatePrecision - calculate precision of positive format * @param (optional) calculateScale - calculate scale of positive format */ export declare function getCustomFormatMetadata(format: string, calculatePrecision?: boolean, calculateScale?: boolean, calculatePartsPerScale?: boolean): NumericFormatMetadata;