import { JSX } from 'react';
import { Size } from 'ol/size';
import { Text } from 'ol/style';
import { default as RBaseStyle, RBaseStyleProps } from './RBaseStyle';
/**
 * @propsfor RText
 */
export interface RTextProps extends RBaseStyleProps {
    /** The text that will be displayed */
    text: string;
    /** Font */
    font?: string;
    /** Horizontal offset */
    offsetX?: number;
    /** Vertical offset */
    offsetY?: number;
    /** Overflow */
    overflow?: boolean;
    /** Scale */
    scale?: number | Size;
    /** Rotation */
    rotation?: number;
    /** Text alignment 'left' | 'right' | 'center' | 'start' | 'end' */
    textAlign?: CanvasTextAlign;
    /** Padding in pixels around the text, [ top, right, bottom, left ] */
    padding?: number[];
    /**
     * Text placement
     * @default 'point'
     */
    placement?: 'line' | 'point';
    /**
     * Text baseline
     * @default 'middle'
     */
    textBaseline?: CanvasTextBaseline;
}
/**
 * Text element of a style
 *
 * Requires an `RStyle` context
 *
 * Provides an `RStyle` context - for `Fill` or `Stroke`
 */
export default class RText extends RBaseStyle<RTextProps> {
    protected static classProps: string[];
    ol: Text;
    protected create(props: RTextProps): Text;
    protected set(ol: Text): void;
    render(): JSX.Element;
}
//# sourceMappingURL=RText.d.ts.map