import { OnDestroy } from '@angular/core';
import { Observable, Subject } from 'rxjs';
import { CascaderItem } from './cascader.type';
import * as i0 from "@angular/core";
export declare class CascaderService implements OnDestroy {
    _currentValue: Array<string | number>;
    multipleValue: Array<string | number>[];
    options: CascaderItem[];
    columnList: CascaderItem[][];
    searchResultList: any[];
    canSelectParent: boolean;
    isMultiple: boolean;
    isLazyLoad: boolean;
    lazyloadCache: {};
    checkboxRelation: {
        upward: boolean;
        downward: boolean;
    };
    loadChildrenFn: (value: CascaderItem) => Promise<CascaderItem[]> | Observable<CascaderItem[]>;
    set currentValue(value: Array<string | number>);
    get currentValue(): Array<string | number>;
    set currentMultipleValue(value: (string | number)[][]);
    get currentMultipleValue(): (string | number)[][];
    readonly closeMianDropdown: Subject<void>;
    readonly currentValueChange: Subject<(string | number)[]>;
    readonly resetStatus: Subject<void>;
    readonly openDrawer: Subject<void>;
    readonly updateShowText: Subject<void>;
    readonly updateTagList: Subject<{
        isAdd: boolean;
        option: CascaderItem;
        isEmit: boolean;
    }>;
    initOptions(options: CascaderItem[]): void;
    openColumn(option: CascaderItem, colIndex: number, islazyLoad: boolean, reload?: boolean): void;
    clearTargetActive(option: CascaderItem): void;
    setCurrentValue(): void;
    updateOptionByValue(): void;
    lazyloadMultipleChild(target: CascaderItem, index: number): void;
    resetNodeStatus(option?: CascaderItem[]): void;
    updateOptionCheckedStatus(targetValue: string | number, checked: boolean, upward?: boolean, downward?: boolean, isEmit?: boolean): void;
    updateChildrenChecked(node: CascaderItem, checked: boolean, isEmit: boolean): void;
    updateParentChecked(node: CascaderItem, isEmit: boolean): void;
    getParentNode(childValue: string | number): CascaderItem;
    getMultipleValue(value: any, option: CascaderItem[]): void;
    closeAllDropdown(): void;
    searchByString(str: string, currentlabel?: string, currentValue?: Array<string | number>, list?: CascaderItem[]): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<CascaderService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<CascaderService>;
}
