import { TranslateService } from "@ngx-translate/core";
import { FormField } from "@seniorsistemas/angular-components";
import { Observable, Subject } from "rxjs";
import { WorkshiftService } from "../../core/entities/workshift/workshift.service";
import { EntityLookupConfigService } from "../../shared/services/entity-lookup-config.service";
export declare class WorkshiftLookupService {
    private translate;
    private configService;
    private workshiftService;
    registerFieldsForValidation: any[];
    workshiftLookupDisplayFields: string[];
    workshiftLookupSeparator: string;
    workshiftTypeOptions: {
        label: string;
        value: string;
    }[];
    workshiftSearchSubject: Subject<unknown>;
    workshiftLookupSubject: Subject<unknown>;
    private ngUnsubscribe;
    constructor(translate: TranslateService, configService: EntityLookupConfigService, workshiftService: WorkshiftService);
    private convertWorkshiftType;
    updateSuggestions(value: any): void;
    getSuggestionValue(displayFields: string[], ownerEntity: string, value: any, separator: string): any;
    /**
     * Método utilizado para montar o lookup no dynamicForm.
     * LookupValidationDto
     */
    getFormField(isCollective?: boolean, additionalFilter?: string, initialFilter?: string): FormField;
    onWorkshiftSearchRequest(event: any, additionalFilter: any, initialFilter: any): void;
    onWorkshiftSearchRequestObservable(event: any, additionalFilter: any, initialFilter: any, isDynamicForm?: boolean): Observable<any>;
    private mapToComponent;
    private getLabelForMaping;
    onWorkshiftLookupRequest(value: string, additionalFilter: any, initialFilter: any): void;
    onWorkshiftLookupRequestObservable(value: string, additionalFilter: any, initialFilter: any): Observable<any>;
    getWorkshiftSearchFields(): FormField[];
    getWorkshiftSearchGridFields(): FormField[];
}
