import EventDispatcher from "../events/EventDispatcher";
import TextFormat from "openfl/text/TextFormat";
declare namespace starling.text {
	/**
	 *  Dispatched when any property of the instance changes. 
	 */
	export class TextFormat extends EventDispatcher {
		/**
		 *  Creates a new TextFormat instance with the given properties. 
		 */
		constructor(font?: string, size?: number, color?: number, horizontalAlign?: string, verticalAlign?: string);
		/**
		 *  Copies all properties from another TextFormat instance. 
		 */
		copyFrom(format: TextFormat): void;
		/**
		 *  Creates a clone of this instance. 
		 */
		clone(): TextFormat;
		/**
		 *  Sets the most common properties at once. 
		 */
		setTo(font?: string, size?: number, color?: number, horizontalAlign?: string, verticalAlign?: string): void;
		/**
		 *  Converts the Starling TextFormat instance to a Flash TextFormat. 
		 */
		toNativeFormat(out?: TextFormat): TextFormat;
		/**
		 *  The name of the font. TrueType fonts will be looked up from embedded fonts and
		 *      *  system fonts; bitmap fonts must be registered at the TextField class first.
		 *      *  Beware: If you loaded an embedded font at runtime, you must call
		 *      *  <code>TextField.updateEmbeddedFonts()</code> for Starling to recognize it.
		 *      
		 */
		get font(): string;
		set font(value: string)
		/**
		 *  The size of the font. For bitmap fonts, use <code>BitmapFont.NATIVE_SIZE</code> for
		 *      *  the original size. 
		 */
		get size(): number;
		set size(value: number)
		/**
		 *  The color of the text. Note that bitmap fonts should be exported in plain white so
		 *      *  that tinting works correctly. If your bitmap font contains colors, set this property
		 *      *  to <code>Color.WHITE</code> to get the desired result. @default black 
		 */
		get color(): number;
		set color(value: number)
		/**
		 *  Indicates whether the text is bold. @default false 
		 */
		get bold(): boolean;
		set bold(value: boolean)
		/**
		 *  Indicates whether the text is italicized. @default false 
		 */
		get italic(): boolean;
		set italic(value: boolean)
		/**
		 *  Indicates whether the text is underlined. @default false 
		 */
		get underline(): boolean;
		set underline(value: boolean)
		/**
		 *  The horizontal alignment of the text. @default center
		 *      *  @see starling.utils.Align 
		 */
		get horizontalAlign(): string;
		set horizontalAlign(value: string)
		/**
		 *  The vertical alignment of the text. @default center
		 *      *  @see starling.utils.Align 
		 */
		get verticalAlign(): string;
		set verticalAlign(value: string)
		/**
		 *  Indicates whether kerning is enabled. Kerning adjusts the pixels between certain
		 *      *  character pairs to improve readability. @default true 
		 */
		get kerning(): boolean;
		set kerning(value: boolean)
		/**
		 *  The amount of vertical space (called 'leading') between lines. @default 0 
		 */
		get leading(): number;
		set leading(value: number)
		/**
		 *  A number representing the amount of space that is uniformly distributed between all characters. @default 0 
		 */
		get letterSpacing(): number;
		set letterSpacing(value: number)
	}
}
export default starling.text.TextFormat;