import { Base, Type } from "./type";
import { SVGNodeType } from "./SVGNodeType";
import { Transform } from "./Transform";
import { List$1 } from "./List$1";
import { SVGAttributeType } from "./SVGAttributeType";
import { PenLineJoin } from "./PenLineJoin";
import { PenLineCap } from "./PenLineCap";
import { SVGBrushType } from "./SVGBrushType";
import { Brush } from "./Brush";
/**
 * @hidden
 */
export declare abstract class SVGNode extends Base {
    static $t: Type;
    c: SVGNodeType;
    g: string;
    h: Transform;
    f: string;
    b: SVGNode;
    e: List$1<SVGNode>;
    constructor(a: SVGNode);
    a(a: SVGAttributeType): SVGBrush;
    d(): boolean;
}
/**
 * @hidden
 */
export declare abstract class SVGPresentationNode extends SVGNode {
    static $t: Type;
    private j;
    get l(): SVGBrush;
    set l(a: SVGBrush);
    private k;
    get m(): SVGBrush;
    set m(a: SVGBrush);
    t: number;
    r: number;
    v: PenLineJoin;
    u: PenLineCap;
    q: number;
    i: number[];
    private o;
    get s(): number;
    set s(a: number);
    private n;
    get p(): number;
    set p(a: number);
    constructor(a: SVGNode);
    a(a: SVGAttributeType): SVGBrush;
}
/**
 * @hidden
 */
export declare class SVGBrush extends Base {
    static $t: Type;
    e: Brush;
    b: SVGBrushType;
    c: SVGNode;
    a: SVGAttributeType;
    f(a: Brush): Brush;
    private d;
}
