import { BehaviorSubject, Observable, Subject } from 'rxjs';
import type { CommentSetComponent } from '../comment-set.component';
import { Annotation } from '../../annotation-set/annotation-view/annotation.model';
import type { CommentComponent } from './comment.component';
import * as i0 from "@angular/core";
export declare class CommentService {
    readonly unsavedChanges: Subject<boolean>;
    readonly marginToCommentEmitter: BehaviorSubject<boolean>;
    commentSetComponent: CommentSetComponent;
    setCommentSet(commentSetComponent: any): void;
    onCommentChange(changes: boolean): void;
    getUnsavedChanges(): Observable<boolean>;
    hasUnsavedComments(annotation: Annotation): boolean;
    updateUnsavedCommentsStatus(annotation: Annotation, hasUnsavedChanges: boolean): void;
    getComment(annotation: Annotation): CommentComponent;
    resetCommentSet(): void;
    allCommentsSaved(): void;
    createMarginToCommentEvent(margin: boolean): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<CommentService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<CommentService>;
}
//# sourceMappingURL=comment.service.d.ts.map