/** * Fluent Grow Typography System * ----------------------------- * Provides a fluent API for applying typographic styles sourced from * design tokens, fluid scales and responsive breakpoints. */ import type { CSSProperties } from '../utils/css-engine'; import { type ResponsiveInput, type ResponsiveOptions } from '../layout/shared'; import { type FluidTypographyOptions } from './fluid'; import { type TypographyScaleName } from './scales'; export type ResponsiveTypographyMap = ResponsiveInput; export interface TypographyConfig extends CSSProperties { fontSize?: string | number; lineHeight?: string | number; letterSpacing?: string | number; fontWeight?: string | number; fontFamily?: string; } export declare class Typography { private element; private cleanupFns; private activeScale?; constructor(element: HTMLElement); set(config: TypographyConfig): this; scale(name: TypographyScaleName): this; weight(value: string | number): this; leading(value: string | number): this; tracking(value: string | number): this; family(value: string): this; familyToken(name: string): this; color(value: string): this; transform(value: CSSProperties['textTransform']): this; uppercase(): this; lowercase(): this; capitalize(): this; fluid(options: FluidTypographyOptions): this; featureSettings(value: string): this; truncate(lines?: number): this; wrap(strategy?: 'balance' | 'pretty' | 'stable' | 'nowrap'): this; responsive(map: ResponsiveTypographyMap, options?: ResponsiveOptions): this; responsiveScale(map: Record, options?: ResponsiveOptions): this; responsiveFluid(map: Record, options?: ResponsiveOptions): this; resetTransform(): this; destroy(): void; private applyScaleDefinition; private scaleDefinitionToConfig; private apply; private resolveBreakpointQuery; private normaliseBreakpointMap; private registerCleanup; lineHeightToken(name: string, fallback?: string): this; } export declare class TypographySystem { private static initialised; private static unsubscribe; static initialize(): void; static teardown(): void; static availableScales(): TypographyScaleName[]; } /** * Typography feature utilities * - font-feature-settings * - hyphenation * - variable font axes (element-level) */ export declare function applyFontFeatures(element: HTMLElement, features: Record): void; export declare function applyHyphenation(element: HTMLElement, mode?: 'none' | 'manual' | 'auto'): void; export declare function applyFontVariationAxes(element: HTMLElement, axes: Record): void; //# sourceMappingURL=index.d.ts.map