import React from "react";
import { FDC3Props, FDC3PostCallback, FDC3SearchCallback, FDC3GetCallback } from "../../../types/fdc3";
import { StandardError } from "../../../../types";
/**
 * Copyright 2018 by ChartIQ, Inc.
 * All rights reserved.
 *
 * FDC3 App directory client, I will be using fetch()
 * to make calls to the appd web service, even though I'm
 * not sure where did fetch() come from, will investigate later
 */
export default class FDC3 extends React.Component<FDC3Props> {
    creds: {};
    config: FDC3Props["config"];
    constructor(props: FDC3Props);
    /**
     * Http get wrapper
     * @param {string} path The restful method path
     * @param {function} done The callback function
     */
    _get(path: string, done: FDC3GetCallback): void;
    /**
     *
     * @param {string} path The restful method path
     * @param {object} params The post data
     * @param {function} done The callback function
     */
    _post(path: string, params: Record<string, string>, done: FDC3PostCallback): void;
    /**
     * Returns all applications
     * @param {function} callback The optional callback function
     */
    getAll(callback: (arg1: Record<string, string> | null, applications: string[]) => void): Promise<unknown>;
    /**
     * Returns a single application in results
     * @param {string} appId The app id
     */
    get(appId: string, callback: (error: StandardError, application: string) => void): Promise<unknown>;
    /**
     * Returns unique tags
     * @param {function} callback The optional callback function
     */
    getTags(callback: (error: StandardError, results: string[]) => void): Promise<unknown>;
    /**
     * Returns a list of applications based on text and filter
     * @param {object} params The search criteria
     * @param {function} callback The callback function
     * @example search({text: 'blah', filter: {tag: 'newrelease'}})
     */
    search(params: Record<string, string>, callback: FDC3SearchCallback): Promise<unknown>;
}
//# sourceMappingURL=FDC3.d.ts.map