/**
 * Copyright (c) Microsoft Corporation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 * http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import React from 'react';
import './modal.css';
import './annotations.css';
import type { AnnotateFrame } from './dashboardModel';
export type Annotation = {
    id: string;
    x: number;
    y: number;
    width: number;
    height: number;
    text: string;
    color: string;
};
export declare function saveAnnotationAsDownload(blob: Blob): Promise<void>;
export declare function buildAnnotatedImage(img: HTMLImageElement, viewportWidth: number, viewportHeight: number, annotations: Annotation[]): Promise<Blob | null>;
export type AnnotationsHandle = {
    clear(): void;
    submit(): Promise<void>;
    save(): Promise<void>;
};
export declare const Annotations: any;
type AnnotateModalProps = {
    frame: AnnotateFrame;
    showSubmit: boolean;
    onSubmit: (blob: Blob, annotations: Annotation[]) => Promise<void>;
    onClose: () => void;
};
export declare const AnnotateModal: React.FC<AnnotateModalProps>;
export {};
//# sourceMappingURL=annotations.d.ts.map