/**
 * @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 { ChangeDetectorRef } from "@angular/core";
import { ICommand, AaiMessage } from "apicurio-data-models";
import { SourceFormComponent } from "./source-form.base";
import { SelectionService } from "../../_services/selection.service";
import { CommandService } from "../../_services/command.service";
import { DocumentService } from "../../_services/document.service";
import { EditorsService } from "../../_services/editors.service";
import { ApiCatalogService } from "../../_services/api-catalog.service";
import { DropDownOptionValue as Value } from "../../../../../../components/common/drop-down.component";
export declare class MessageFormComponent extends SourceFormComponent<AaiMessage> {
    protected changeDetectorRef: ChangeDetectorRef;
    protected selectionService: SelectionService;
    protected commandService: CommandService;
    protected documentService: DocumentService;
    private editors;
    private catalog;
    protected _message: AaiMessage;
    currentPart: string;
    set message(message: AaiMessage);
    get message(): AaiMessage;
    /**
    * C'tor.
    * @param changeDetectorRef
    * @param selectionService
    * @param commandService
    * @param documentService
    * @param editors
    * @param catalog
    */
    constructor(changeDetectorRef: ChangeDetectorRef, selectionService: SelectionService, commandService: CommandService, documentService: DocumentService, editors: EditorsService, catalog: ApiCatalogService);
    protected createEmptyNodeForSource(): AaiMessage;
    protected createReplaceNodeCommand(node: AaiMessage): ICommand;
    schemaFormatOptions(): Value[];
    isPartActive(part: string): boolean;
    setActivePart(part: string): void;
    changeName(newName: string): void;
    changeTitle(newTitle: string): void;
    changeSummary(newSummary: string): void;
    changeDescription(newDescription: string): void;
    changeContentType(newContentType: string): void;
    changeSchemaFormat(newSchemaFormat: boolean): void;
    enableSourceMode(): void;
    tagDefs(): () => string[];
}
