import { TranslateService } from "@ngx-translate/core";
import { FormField } from "@seniorsistemas/angular-components";
import { Observable, Subject } from "rxjs";
import { EntityLookupConfigService } from "../../shared/services/entity-lookup-config.service";
import { AdministrativeJudicialCaseService } from "../../core/entities/administrative-judicial-case/administrative-judicial-case.service";
import { EnumCaseType } from "../../core/enums/case-type";
import { EnumCaseClassificationType } from "../../core/enums/case-classification-type";
export declare class AdministrativeJudicialCaseLookupService {
    private translate;
    private configService;
    private administrativeJudicialCaseService;
    private administrativeJudicialCaseDisplayFields;
    private administrativeJudicialCaseLabelDisplayFields;
    administrativeJudicialCaseLookupSeparator: string;
    administrativeJudicialCaseSearchSubject: Subject<unknown>;
    administrativeJudicialCaseLookupSubject: Subject<unknown>;
    private ngUnsubscribe;
    caseType: {
        label: string;
        value: EnumCaseType;
    }[];
    caseClassificationType: {
        label: string;
        value: EnumCaseClassificationType;
    }[];
    constructor(translate: TranslateService, configService: EntityLookupConfigService, administrativeJudicialCaseService: AdministrativeJudicialCaseService);
    updateSuggestions(value: any): void;
    getSuggestionValue(displayFields: string[], ownerEntity: string, value: any, separator: string): string;
    /**
     * Método utilizado para montar o lookup no dynamicForm.
     * LookupValidationDto
     */
    getFormField(isCollective?: boolean, additionalFilter?: string, initialFilter?: string): FormField;
    onAdministrativeJudicialCaseSearchRequest(event: any, additionalFilter: any, initialFilter: any): void;
    onAdministrativeJudicialCaseSearchRequestObservable(event: any, additionalFilter: any, initialFilter: any, isDynamicForm?: boolean): Observable<any>;
    private mapToComponent;
    private getLabelForMaping;
    onAdministrativeJudicialCaseLookupRequest(value: string, additionalFilter: any, initialFilter: any): void;
    onAdministrativeJudicialCaseLookupRequestObservable(value: string, additionalFilter: any, initialFilter: any): Observable<any>;
    getAdministrativeJudicialCaseSearchFields(caseClassificationType?: EnumCaseClassificationType, companyIds?: string[]): FormField[];
}
