import { DeadStockLookup } from './dead-stock-lookup';
import { DistributorLookup } from './distributor-lookup';
import { ManufacturerLookup } from './manufacturer-lookup';
import { ErrorKeys, LanguageKeys, MultiLingual, SharedLocales } from "../../features/multi-lingual/index";
import { PartLookupDTO } from "../../global/types/generated/part/part-lookup-dto";
import { BlazorInvokableFunction, DotNetObjectReference } from "../../features/blazor-ref/index";
import { Endpoint } from "../../global/lib/fetch-from";
declare const componentTags: {
    readonly deadStock: "dead-stock-lookup";
    readonly distributor: "distributor-lookup";
    readonly manufacturer: "manufacturer-lookup";
};
export type ComponentMap = {
    [componentTags.deadStock]: DeadStockLookup;
    [componentTags.distributor]: DistributorLookup;
    [componentTags.manufacturer]: ManufacturerLookup;
};
export type ActiveElement = (typeof componentTags)[keyof typeof componentTags] | '';
export declare class PartLookup implements MultiLingual {
    language: LanguageKeys;
    locale: SharedLocales;
    componentWillLoad(): Promise<void>;
    changeLanguage(newLanguage: LanguageKeys): Promise<void>;
    activeElement?: ActiveElement;
    mockUrl: string;
    endpoint: Endpoint;
    isDev: boolean;
    childrenProps?: string | Object;
    loadedMockDatas?: BlazorInvokableFunction<(response: any) => void>;
    errorCallback?: BlazorInvokableFunction<(errorMessage: ErrorKeys) => void>;
    loadingStateChange?: BlazorInvokableFunction<(isLoading: boolean) => void>;
    loadedResponse?: BlazorInvokableFunction<(response: PartLookupDTO) => void>;
    errorKey: ErrorKeys;
    wrapperErrorState: string;
    isError: boolean;
    header: string;
    isLoading: boolean;
    private searchGeneration;
    blazorRef?: DotNetObjectReference;
    el: HTMLElement;
    private componentsList;
    componentDidLoad(): Promise<void>;
    private syncErrorAcrossComponents;
    handleLoadData(newResponse: PartLookupDTO, activeElement: any): Promise<void>;
    private loadingStateChangingMiddleware;
    private onMockDataSetMiddleware;
    errorListener(newState: any): Promise<void>;
    setBlazorRef(newBlazorRef: DotNetObjectReference): Promise<void>;
    fetchData(partNumber: string, quantity?: string): Promise<string>;
    getMockData(): Promise<any>;
    render(): any;
}
export {};
