import { Component } from '../../../../../client/component';
import { System } from '../../../../../system';
import { Dict } from '../../../../../types/Dict';
export interface Props {
    className?: string;
    style?: Dict<string>;
    icon?: string;
    width?: number;
    height?: number;
    x?: number;
    y?: number;
    _x?: number;
    _y?: number;
    collapsed?: boolean;
}
export declare const DEFAULT_STYLE: {};
export declare const COLLAPSED_WIDTH = 33;
export declare const COLLAPSED_HEIGHT = 33;
export declare const PADDING = 9;
export declare const BUTTON_HEIGHT = 48;
export declare const BUTTON_WIDTH = 24;
export default class GUIControl extends Component<HTMLDivElement, Props> {
    private _root;
    private _collapsed_x;
    private _collapsed_y;
    private _non_collapsed_x;
    private _non_collapsed_y;
    private _x;
    private _y;
    private _collapsed;
    private _docked;
    private _docked_x;
    private _docked_y;
    private _docking;
    private _last_dx;
    private _last_dy;
    constructor($props: Props, $system: System);
    private _get_screen_ratio;
    private _refresh_dock;
    onPropChanged(prop: string, current: any): void;
    private _background_color;
    private _refresh_color;
    private _set_z_index;
    private _context_unlisten;
    private _z_index;
    private _clamp_x_y;
    private _get_height;
    private _get_width;
    onMount(): void;
    onUnmount(): void;
}
