import { EventEmitter } from '../../stencil.core';
import firebase from 'firebase/app';
interface BaseCustomer {
    logoPath: string;
    name: string;
}
interface ViewCustomerSmall extends BaseCustomer {
    baseEnvironments: firebase.firestore.DocumentReference[];
}
export interface BaseEnvironment {
    endpoint: string;
    type: string;
    customerName: string;
}
interface ViewCustomerBig extends BaseCustomer {
    baseEnvironments: BaseEnvironment[];
}
declare enum CustomerDataState {
    LOADED = 0,
    LOADING = 1,
    FAILED = 2,
    UNAUTHORIZED = 3
}
export declare class Customers {
    /**
     * This will emit whenever an endpoint is selected
     */
    endPointSelect: EventEmitter<BaseEnvironment>;
    viewCustomers: ViewCustomerSmall[];
    selectedCustomer: ViewCustomerBig;
    customerDataState: CustomerDataState;
    constructor();
    componentWillLoad(): Promise<void>;
    selectCustomer(customer: ViewCustomerSmall): Promise<void>;
    render(): any;
    private renderLoading;
    private renderShowUnauthorizedError;
    private renderCustomers;
    private renderCustomerCard;
    private renderBaseEnvironments;
    private logout;
    private selectEndpoint;
}
export {};
