import { Observable } from 'rxjs';
export interface PickListItem<T> {
    disabled?: boolean;
    data: T;
    id?: string;
}
export type PicklistTarget = 'to-select' | 'selected';
export type PicklistLazyLoadEvent = {
    target: PicklistTarget;
    page: number;
    filter: string;
    pageSize: number;
};
export type PicklistItemMove<T> = {
    items: T[];
    direction: PicklistTarget;
    moveAll: boolean;
    revertAction: VoidFunction;
};
export type PicklistLoaderResponse<T> = {
    items: PickListItem<T>[];
    totalRecords: number;
};
export type PicklistLoader<T> = (event: PicklistLazyLoadEvent) => Observable<PicklistLoaderResponse<T>>;
