export declare function isUnitless(value: string): boolean; export declare function getUnit(input: string | number): string; export declare function toUnitless(length: string | number): number; export declare function convertLength(baseFontSize: string): (length: string, toUnit: string) => string; export interface AlignPropertyParams { size: number; grid: number; } export declare function alignProperty(params: AlignPropertyParams): number; export interface FontGridParams { lineHeight: number; pixels: number; htmlFontSize: number; } export declare function fontGrid(params: FontGridParams): number; export interface ResponsivePropertyParams { cssProperty: string; min: number; max: number; unit?: string; breakpoints?: number[]; transform?: (value: number) => number; } /** * generate a responsive version of a given CSS property * @example * responsiveProperty({ * cssProperty: 'fontSize', * min: 15, * max: 20, * unit: 'px', * breakpoints: [300, 600], * }) * * // this returns * * { * fontSize: '15px', * '@media (min-width:300px)': { * fontSize: '17.5px', * }, * '@media (min-width:600px)': { * fontSize: '20px', * }, * } * @param {Object} params * @param {string} params.cssProperty - The CSS property to be made responsive * @param {number} params.min - The smallest value of the CSS property * @param {number} params.max - The largest value of the CSS property * @param {string} [params.unit] - The unit to be used for the CSS property * @param {Array.number} [params.breakpoints] - An array of breakpoints * @param {number} [params.alignStep] - Round scaled value to fall under this grid * @returns {Object} responsive styles for {params.cssProperty} */ export declare function responsiveProperty(params: ResponsivePropertyParams): Record; //# sourceMappingURL=cssUtils.d.ts.map