import { ElementNode } from '../util/xml.js'; import { ColorInput } from '../types/index.js'; import { IDMLStylesContext } from './Styles.js'; import type { Capitalization } from './ParagraphStyle.js'; export type CharacterStyleInput = { appliedFont?: string; fontStyle?: string; fontSize?: number; strokeWeight?: number; fillColor?: ColorInput; strokeColor?: ColorInput; underline?: boolean; /** InDesign underline stroke thickness, in points (character-level attribute). */ underlineWeight?: number; /** Underline position relative to the baseline, in points (negative = above it). */ underlineOffset?: number; /** Underline stroke color (own swatch, independent of the text fill). */ underlineColor?: ColorInput; strikeThrough?: boolean; tracking?: number; leading?: number; /** InDesign `Capitalization` (AllCaps / SmallCaps) applied at character level. */ capitalization?: Capitalization; /** InDesign `AppliedLanguage` (raw name/locale, e.g. "$ID/English: USA", "$ID/de_DE_2006") * — mapped to a BCP-47 hyphenation tag in effectiveTextStyle. */ appliedLanguage?: string; /** InDesign `HorizontalScale` — raw percentage (100 = normal), ratio-mapped in effectiveTextStyle. */ horizontalScale?: number; }; export declare class CharacterStyle { id: string; private context; name?: string; appliedFont?: string; fontStyle?: string; fontSize?: number; strokeWeight?: number; fillColorId?: string; strokeColorId?: string; underline?: boolean; underlineWeight?: number; underlineOffset?: number; underlineColorId?: string; strikeThrough?: boolean; tracking?: number; leading?: number; appliedLanguage?: string; horizontalScale?: number; extendedKeyboardShortcut?: number[]; includeClass?: boolean; styleUID?: string; imported?: boolean; splitDocument?: boolean; emitCss?: boolean; rootCharacterStyleGroupId?: string; constructor(id: string, opts: { imported?: boolean; splitDocument?: boolean; emitCss?: boolean; styleUID?: string; includeClass?: boolean; extendedKeyboardShortcut?: number[]; name?: string; appliedFont?: string; fontStyle?: string; fontSize?: number; strokeWeight?: number; fillColorId?: string; strokeColorId?: string; underline?: boolean; underlineWeight?: number; underlineOffset?: number; underlineColorId?: string; strikeThrough?: boolean; tracking?: number; leading?: number; appliedLanguage?: string; horizontalScale?: number; rootCharacterStyleGroupId?: string; }, context: IDMLStylesContext); toCharacterStyleInput(): CharacterStyleInput; serialize(): ElementNode; equals(input: CharacterStyleInput): boolean | undefined; static parseElement(element: Element, context: IDMLStylesContext): CharacterStyle; } //# sourceMappingURL=CharacterStyle.d.ts.map