/// <reference types="pcore-pconnect-typedefs" />
import { OnInit, ChangeDetectorRef, OnDestroy } from '@angular/core';
import { FormControl, FormGroup } from '@angular/forms';
import { AngularPConnectData, AngularPConnectService } from '../../../_bridge/angular-pconnect';
import { DatapageService } from '../../../_services/datapage.service';
import { Utils } from '../../../_helpers/utils';
import { PConnFieldProps } from '../../../_types/PConnProps.interface';
import * as i0 from "@angular/core";
interface IOption {
    key: string;
    value: string;
}
interface DropdownProps extends PConnFieldProps {
    datasource?: any[];
    onRecordChange?: any;
    fieldMetadata?: any;
    listType?: string;
    columns?: any[];
    deferDatasource?: boolean;
    datasourceMetadata?: any;
    parameters?: any;
}
export declare class DropdownComponent implements OnInit, OnDestroy {
    private angularPConnect;
    private cdRef;
    private utils;
    private dataPageService;
    pConn$: typeof PConnect;
    formGroup$: FormGroup;
    angularPConnectData: AngularPConnectData;
    configProps$: DropdownProps;
    label$: string;
    value$: string;
    bRequired$: boolean;
    bReadonly$: boolean;
    bDisabled$: boolean;
    bVisible$: boolean;
    displayMode$?: string;
    controlName$: string;
    bHasForm$: boolean;
    options$: IOption[];
    componentReference: string;
    testId: string;
    helperText: string;
    hideLabel: any;
    theDatasource: any[] | null;
    fieldControl: FormControl<string | null>;
    fieldMetadata: any[];
    localeContext: string;
    localeClass: string;
    localeName: string;
    localePath: string;
    localizedValue: string;
    constructor(angularPConnect: AngularPConnectService, cdRef: ChangeDetectorRef, utils: Utils, dataPageService: DatapageService);
    ngOnInit(): void;
    ngOnDestroy(): void;
    onStateChange(): void;
    checkAndUpdate(): void;
    updateSelf(): void;
    getDatapageData(): void;
    getData(dataSource: any, parameters: any, columns: any, context: any, listType: any): void;
    isSelected(buttonValue: string): boolean;
    fieldOnChange(event: any): void;
    getLocalizedOptionValue(opt: IOption): string;
    getErrorMessage(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<DropdownComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DropdownComponent, "app-dropdown", never, { "pConn$": { "alias": "pConn$"; "required": false; }; "formGroup$": { "alias": "formGroup$"; "required": false; }; }, {}, never, never, true, never>;
}
export {};
