import { IBusiness, IResponseBody } from 'cobalt-int-common';
export declare class SosApi {
    private apiKey;
    private targetedEnvironment;
    constructor(apiKey: string, targetedEnvironment?: any);
    /**
     * This function will handle any long polling and return the business details of any business
     * if found.
     * @param businessName
     * @param state
     * @returns
     */
    getBusinessDetails(businessName: string, state: string, liveData?: boolean, screenshot?: boolean, uccData?: boolean, street?: string, city?: string, zip?: string, callbackUrl?: string, nameAvailabilityCheck?: boolean): Promise<IResponseBody>;
    /**
     * This function will handle any long polling and return the business details of any business
     * if found.
     * @param sosId
     * @param state
     * @returns
     */
    getBusinessDetailsBySosId(sosId: string, state: string, liveData?: boolean, screenshot?: boolean, uccData?: boolean, street?: string, city?: string, zip?: string, searchQuery?: string): Promise<IResponseBody>;
    /**
     * This function will handle any long polling and return the business details of any business
     * if found.
     * @param sosId
     * @param state
     * @returns
     */
    getListBySearchQuery(businessName: string, state: string, liveData?: boolean): Promise<IResponseBody>;
    /**
     * This function allows you to send a business name and search all available states for instances
     * of this business.
     * @param businessName
     * @returns
     */
    searchAllStatesByBusinessName(businessName: string): Promise<{
        state: string;
        result: IBusiness | string;
    }[]>;
    /**
    * This function will handle any long polling and return the business details of any business
    * if found.
    * @param firstName
    * @param lastName
    * @param state
    * @returns
    */
    getDetailsByPersonName(firstName: string, lastName: string, state: string, liveData?: boolean, screenshot?: boolean, uccData?: boolean, street?: string, city?: string, zip?: string): Promise<IResponseBody>;
    getAPIKeyUsage(): Promise<any>;
    private retryBusinessDetails;
    private timeout;
}
