import ElementPeer from './ElementPeer';
import PositionType from '../../PositionType';
import SizeType from '../../SizeType';
declare class GroupPeer extends ElementPeer {
    private _coordSize;
    private _position;
    private _coordOrigin;
    constructor();
    setCoordSize(width: number, height: number): void;
    getCoordSize(): SizeType;
    /**
     * http://www.w3.org/TR/SVG/coords.html#TransformAttribute
     * 7.6 The transform  attribute
     *
     * The value of the transform attribute is a <transform-list>, which is defined
     * as a list of transform definitions, which are applied in the order provided.
     * The individual transform definitions are separated by whitespace and/or a comma.
     * The available types of transform definitions include:
     *
     *    * matrix(<a> <b> <c> <d> <e> <f>), which specifies a transformation in the form
     * of a transformation matrix of six values. matrix(a,b,c,d,e,f) is equivalent to applying
     * the transformation matrix [a b c d e f].
     *
     *    * translate(<tx> [<ty>]), which specifies a translation by tx and ty.
     * If <ty> is not provided, it is assumed to be zero.
     *
     *    * scale(<sx> [<sy>]), which specifies a scale operation by sx and sy.
     * If <sy> is not provided, it is assumed to be equal to <sx>.
     *
     *    * rotate(<rotate-angle> [<cx> <cy>]), which specifies a rotation
     * by <rotate-angle> degrees about a given point.
     *      If optional parameters <cx> and <cy> are not supplied, the rotate
     * is about the origin of the current user coordinate system. The operation corresponds
     * to the matrix [cos(a) sin(a) -sin(a) cos(a) 0 0].
     *      If optional parameters <cx> and <cy> are supplied, the rotate is
     * about the point (<cx>, <cy>). The operation represents the equivalent of the
     *following specification: translate(<cx>, <cy>) rotate(<rotate-angle>) translate(-<cx>, -<cy>).
     *
     *    * skewX(<skew-angle>), which specifies a skew transformation along the x-axis.
     *
     *    * skewY(<skew-angle>), which specifies a skew transformation along the y-axis.
     * */
    updateTransform(): void;
    setOpacity(value: number): void;
    setCoordOrigin(x: number, y: number): void;
    setSize(width: number, height: number): void;
    setPosition(x: number, y: number): void;
    getPosition(): PositionType;
    append(child: any): void;
    getCoordOrigin(): {
        x: number;
        y: number;
    };
}
export default GroupPeer;
