import { ArgsCheckerParameterIndex } from './api-utils/parameter-checker';
import { FontInfoCache } from '../../common/model/caches/hashed-caches/font-info-cache';
import { CharacterProperties } from '../../common/model/character/character-properties';
import { ColorProvider } from '../../common/model/color/color-provider';
import { FixedInterval } from '@devexpress/utils/lib/intervals/fixed';
import { SubDocument } from '../../common/model/sub-document';
import { IProcessor } from '../../common/processor';
export declare enum CharacterPropertiesScriptApi {
    Normal = 0,
    Subscript = 1,
    Superscript = 2
}
export interface ICharacterProperties {
    fontName?: string;
    size?: number;
    foreColor?: string;
    backColor?: string;
    highlightColor?: string;
    underline?: boolean;
    underlineColor?: string;
    bold?: boolean;
    italic?: boolean;
    strikeout?: boolean;
    underlineWordsOnly?: boolean;
    script?: CharacterPropertiesScriptApi;
    allCaps?: boolean;
    hidden?: boolean;
    smallCaps?: boolean;
}
export declare class CharacterPropertiesApi {
    fontName: string;
    size: number;
    foreColor: string;
    backColor: string;
    highlightColor: string;
    underline: boolean;
    underlineColor: string;
    bold: boolean;
    italic: boolean;
    strikeout: boolean;
    underlineWordsOnly: boolean;
    script: CharacterPropertiesScriptApi;
    allCaps: boolean;
    hidden: boolean;
    smallCaps: boolean;
}
export declare function convertToCharacterPropertiesApi(properties: CharacterProperties, colorProvider: ColorProvider): CharacterPropertiesApi;
export declare function convertFromCharacterPropertiesApi(properties: ICharacterProperties, fontInfoCache: FontInfoCache, parameterIndex: ArgsCheckerParameterIndex, setRestAsUndefined: boolean, propsCoreTemplate?: CharacterProperties): CharacterProperties;
export declare function getCharacterProperties(processor: IProcessor, subDocument: SubDocument, coreInterval: FixedInterval): CharacterPropertiesApi;
export declare function setCharacterProperties(processor: IProcessor, subDocument: SubDocument, coreInterval: FixedInterval, characterProperties: ICharacterProperties): void;
