import { VMarkedText } from './IMarkedText';
import ISubjectLedger from './ISubjectLedger';
import Subject from './Subject';
export default class SubjectLedger implements ISubjectLedger {
    private markedText;
    private activeSubjectNames;
    private subjectGlossary;
    private subjectColorLightness;
    private numSubjectColors;
    private colors;
    constructor(subjectColorLightness: number, numSubjectColors: number);
    link(markedText: VMarkedText): void;
    byName(name: string): Subject | undefined;
    resetSubjects(resetActive?: boolean): void;
    addSubjects(subjects: Iterable<string>, active?: boolean): void;
    private generateColors;
    subjectColor(subjectName: string): string | undefined;
    subjectStyle(subjectName: string): any;
    activateSubject(subjectName: string): void;
    deactivateSubject(subjectName: string): void;
    toggleSubject(subjectName: string): void;
    activateAllSubjects(): void;
    deactivateAllSubjects(): void;
    lineConnectSubject(subjectName: string): void;
    lineDisconnectSubject(subjectName: string): void;
    toggleLines(subjectName: string): void;
}
