import { BaseXform } from "../base-xform.js";
import { StaticXform } from "../static-xform.js";
interface StylesModel {
    styles?: any[];
    numFmts?: any[];
    fonts?: any[];
    borders?: any[];
    fills?: any[];
    dxfs?: any[];
}
declare class StylesXform extends BaseXform {
    private index?;
    private weakMap?;
    private _hasCheckboxes?;
    defaultFont?: any;
    parser: any;
    static Mock: typeof StylesXform;
    constructor(initialise?: boolean);
    initIndex(): void;
    init(): void;
    /**
     * Set the default font to use when no font is explicitly specified.
     * This preserves the original file's default font during round-trip.
     */
    setDefaultFont(font: any): void;
    render(xmlStream: any, model?: StylesModel): void;
    parseOpen(node: any): boolean;
    parseText(text: string): void;
    parseClose(name: string): boolean;
    addStyleModel(model: any, cellType?: number): number;
    getStyleModel(id: number): any;
    addDxfStyle(style: any): number;
    getDxfStyle(id: number): any;
    get hasCheckboxes(): boolean;
    _addStyle(style: any): number;
    _addNumFmtStr(formatCode: string): number;
    _addFont(font: any): number;
    _addBorder(border: any): number;
    _addFill(fill: any): number;
    static STYLESHEET_ATTRIBUTES: {
        xmlns: string;
        "xmlns:mc": string;
        "mc:Ignorable": string;
        "xmlns:x14ac": string;
        "xmlns:x16r2": string;
    };
    static STATIC_XFORMS: {
        cellStyles: StaticXform;
        dxfs: StaticXform;
        tableStyles: StaticXform;
        extLst: StaticXform;
    };
}
export { StylesXform };
