import { EventEmitter, OnInit, AfterViewInit, ElementRef, OnChanges, SimpleChanges } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { AddPhoto, File, ReplyMeta, User } from '../inspire-library.interface';
import { AddMediaOptions } from '../inspire-library.enum';
import * as i0 from "@angular/core";
export declare class ReplyComponent implements OnInit, OnChanges, AfterViewInit {
    replyTextArea: ElementRef;
    authorName: string;
    currentUser: User;
    showAddMedia: boolean;
    focus: boolean;
    showCancelReply: boolean;
    photos: AddPhoto[];
    isMobile: boolean;
    postReply: EventEmitter<ReplyMeta>;
    updatePhotoMetaData: EventEmitter<AddPhoto[]>;
    uploadFile: EventEmitter<File[]>;
    cancelReply: EventEmitter<void>;
    replyForm: FormGroup;
    isAddMedia: boolean;
    addMediaOptions: typeof AddMediaOptions;
    isPreviewReply: boolean;
    nextButtonText: string;
    attachToPostButtonText: string;
    constructor();
    initForm(): void;
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngAfterViewInit(): void;
    onSubmit(): void;
    toggleFocus(value: boolean, elementRef?: HTMLElement): void;
    toggleIsAddPhotos(): void;
    onSetAttachedPhotos(photos: AddPhoto[]): void;
    onUpdatePhotoMetaData(photos: AddPhoto[]): void;
    onUpload(files: File[]): void;
    onCloseMedia(): void;
    togglePreviewReply(): void;
    onCancelReply(): void;
    static ɵfac: i0.ɵɵFactoryDef<ReplyComponent, never>;
    static ɵcmp: i0.ɵɵComponentDefWithMeta<ReplyComponent, "ins-reply", never, { "authorName": "authorName"; "currentUser": "currentUser"; "showAddMedia": "showAddMedia"; "focus": "focus"; "showCancelReply": "showCancelReply"; "photos": "photos"; "isMobile": "isMobile"; }, { "postReply": "postReply"; "updatePhotoMetaData": "updatePhotoMetaData"; "uploadFile": "uploadFile"; "cancelReply": "cancelReply"; }, never, never>;
}
