/**
 * @license
 * Copyright 2017 JBoss Inc
 *
 * 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 { EventEmitter, QueryList } from "@angular/core";
import { ModalDirective } from "ngx-bootstrap/modal";
import { DropDownOption } from "../../../../../../components/common/drop-down.component";
export declare class AddMediaTypeDialogComponent {
    private static CUSTOM_TYPES_STORAGE_KEY;
    onAdd: EventEmitter<string>;
    addMediaTypeModal: QueryList<ModalDirective>;
    private addedMediaTypeNames;
    private _isOpen;
    private _typeOptions;
    mediaType: string;
    customType: string;
    protected mediaTypeExists: boolean;
    /**
     * Called to open the dialog.
     * @param addedMediaTypeNames Array of the already added media types, to prevent adding them again
     * @param mediaType Media type to select by default
     */
    open(addedMediaTypeNames?: string[], mediaType?: string): void;
    mediaTypeOptions(): DropDownOption[];
    /**
     * Called to close the dialog.
     */
    close(): void;
    /**
     * Called when the user clicks "add".
     */
    add(): void;
    /**
     * Called when the user clicks "cancel".
     */
    cancel(): void;
    /**
     * Returns true if the dialog is open.
     * @return
     */
    isOpen(): boolean;
    /**
     * Stores the custom type in browser local storage.
     * @param type
     */
    private rememberCustomType;
    private getCustomTypes;
    private isStandardType;
    isMediaTypeAlreadyAdded(): boolean;
    isValid(): boolean;
}
