import { SelectionModel } from '@angular/cdk/collections';
import { MultiSelectOptionComponent } from './multi-select-option/multi-select-option.component';
import { IOption } from './multi-select.type';
import * as i0 from "@angular/core";
export declare class MultiSelectService {
    optionsStyle: 'checkbox' | 'text';
    selectionModel: SelectionModel<any>;
    setSelectionModel(multiple?: boolean, initiallySelectedValues?: string[]): void;
    private readonly multiSelectVisible;
    readonly multiSelectVisible$: import("rxjs").Observable<boolean>;
    toggleVisible(visible: boolean): void;
    private readonly multiSelectFocus;
    readonly multiSelectFocus$: import("rxjs").Observable<MultiSelectOptionComponent>;
    focusChange(option: MultiSelectOptionComponent): void;
    readonly userOptionsSignal: import("@angular/core").WritableSignal<IOption[]>;
    getUserOptions(): import("@angular/core").Signal<IOption[]>;
    addUserOption(option: IOption): void;
    removeUserOption(value: string): void;
    removeAllUserOptions(): void;
    private readonly optionsArray;
    readonly optionsArray$: import("rxjs").Observable<IOption[]>;
    getOptionsArray(): import("rxjs").Observable<IOption[]>;
    updateOptionsArray(options: IOption[]): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<MultiSelectService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<MultiSelectService>;
}
