import '/lens/region_selection.js';
import '/lens/post_selection_renderer.js';
import '/lens/overlay_border_glow.js';
import '/lens/overlay_shimmer_canvas.js';
import '/strings.m.js';
import '//resources/cr_elements/cr_button/cr_button.js';
import '//resources/cr_elements/cr_icon_button/cr_icon_button.js';
import '//resources/cr_elements/cr_toast/cr_toast.js';
import type { PropertyValues } from '//resources/lit/v3_0/lit.rollup.js';
import type { OverlayBorderGlowElement } from '/lens/overlay_border_glow.js';
import type { OverlayShimmerCanvasElement } from '/lens/overlay_shimmer_canvas.js';
import type { PostSelectionRendererElement } from '/lens/post_selection_renderer.js';
import type { RegionSelectionElement } from '/lens/region_selection.js';
import { SelectionOverlayBaseLitElement } from '/lens/selection_overlay_base_lit.js';
export interface SelectionOverlayElementElement {
    $: {
        backgroundImageCanvas: HTMLCanvasElement;
        cursor: HTMLElement;
        initialFlashScrim: HTMLElement;
        overlayShimmerCanvas: OverlayShimmerCanvasElement;
        postSelectionRenderer: PostSelectionRendererElement;
        regionSelectionLayer: RegionSelectionElement;
        selectionOverlay: HTMLElement;
    };
}
export declare class SelectionOverlayElementElement extends SelectionOverlayBaseLitElement {
    static get is(): string;
    static get styles(): import("//resources/lit/v3_0/lit.rollup.js").CSSResultGroup;
    render(): import("//resources/lit/v3_0/lit.rollup.js").TemplateResult<1>;
    static get properties(): {
        screenshotDataUri: {
            type: StringConstructor;
        };
        enableRegionSelectedGlow: {
            type: BooleanConstructor;
        };
        enableBorderGlow: {
            type: BooleanConstructor;
        };
        disableShimmer: {
            type: BooleanConstructor;
        };
        isScreenshotRendered: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        isResized: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        isInitialSize: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        canvasHeight: {
            type: NumberConstructor;
        };
        canvasWidth: {
            type: NumberConstructor;
        };
        isPointerInside: {
            type: BooleanConstructor;
        };
        currentGesture: {
            type: ObjectConstructor;
        };
        isClosing: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        shimmerOnSegmentation: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        shimmerFadeOutComplete: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        darkenExtraScrim: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        selectionOverlayRect: {
            type: ObjectConstructor;
        };
        hideBackgroundImageCanvas: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        sidePanelOpened: {
            type: BooleanConstructor;
            reflect: boolean;
        };
        activeRegionId: {
            type: StringConstructor;
        };
    };
    accessor screenshotDataUri: string;
    accessor enableRegionSelectedGlow: boolean;
    accessor enableBorderGlow: boolean;
    accessor disableShimmer: boolean;
    constructor();
    get selectionElements(): {
        backgroundImageCanvas: HTMLCanvasElement;
        cursor: HTMLElement;
        initialFlashScrim: HTMLElement;
        overlayShimmerCanvas: OverlayShimmerCanvasElement;
        postSelectionRenderer: PostSelectionRendererElement;
        regionSelectionLayer: RegionSelectionElement;
        selectionOverlay: HTMLElement;
    };
    updated(changedProperties: PropertyValues<this>): void;
    firstUpdated(): void;
    private updateThemeColors;
    protected get defaultCursorIconUrl(): string;
    handleGestureStart(): void;
    protected handleGestureDrag(event: PointerEvent): void;
    protected handleGestureEnd(): void;
    getOverlayBorderGlow(): OverlayBorderGlowElement;
}
declare global {
    interface HTMLElementTagNameMap {
        'glic-selection-overlay': SelectionOverlayElementElement;
    }
}
