import { AttributeInfo } from '../internal/attributeInfo';
import { LinkElement } from './linkElement';
import { XmlColor } from './xmlColor';
export declare const importsMapBorder: {
    LinkElement: typeof LinkElement;
    XmlColor: typeof XmlColor;
};
/**
 * Represents a border of an object.
 * Borders can be applied to various document elements including paragraph, run of text inside a paragraph or a table cell.
 */
export declare class Border extends LinkElement {
    /**
     * Attribute type map
     */
    static attributeTypeMap: Array<AttributeInfo>;
    /**
     * Returns attribute type map
     */
    static getAttributeTypeMap(): AttributeInfo[];
    /**
     * Gets or sets the border type.
     */
    borderType: Border.BorderTypeEnum;
    /**
     * Gets or sets the border color.
     */
    color: XmlColor;
    /**
     * Gets or sets the distance of the border from text or from the page edge in points.
     * Has no effect and will be automatically reset to zero for borders of table cells.
     */
    distanceFromText: number;
    /**
     * Gets or sets the border style.
     * If you set line style to none, then line width is automatically changed to zero.
     */
    lineStyle: Border.LineStyleEnum;
    /**
     * Gets or sets the border width in points.
     * If you set line width greater than zero when line style is none, the line style is automatically changed to single line.
     */
    lineWidth: number;
    /**
     * Gets or sets a value indicating whether the border has a shadow.
     * In Microsoft Word, for a border to have a shadow, the borders on all four sides (left, top, right and bottom) should be of the same type, width, color and all should have the Shadow property set to true.
     */
    shadow: boolean;
    constructor(init?: Partial<Border>);
    collectFilesContent(_resultFilesContent: Array<any>): void;
    validate(): void;
}
/**
 * Enums for Border
 */
export declare namespace Border {
    enum BorderTypeEnum {
        Bottom,
        Left,
        Right,
        Top,
        Horizontal,
        Vertical,
        DiagonalDown,
        DiagonalUp,
        None
    }
    enum LineStyleEnum {
        None,
        Single,
        Thick,
        Double,
        Hairline,
        Dot,
        DashLargeGap,
        DotDash,
        DotDotDash,
        Triple,
        ThinThickSmallGap,
        ThickThinSmallGap,
        ThinThickThinSmallGap,
        ThinThickMediumGap,
        ThickThinMediumGap,
        ThinThickThinMediumGap,
        ThinThickLargeGap,
        ThickThinLargeGap,
        ThinThickThinLargeGap,
        Wave,
        DoubleWave,
        DashSmallGap,
        DashDotStroker,
        Emboss3D,
        Engrave3D,
        Outset,
        Inset
    }
}
