import { Roku } from "./roku";
import { InputOptions, LaunchOptions, RokuAppInfo } from "./types";
export declare class App {
    appInfo: RokuAppInfo;
    private get;
    private post;
    toString: () => string;
    /**
     * Initializes a new App given its id and parent device
     * @param {{}} appInfo App details (id required)
     * @param {Roku} parent Parent device
     */
    constructor(appInfo: RokuAppInfo, parent: Roku);
    /**
     * Returns an icon corresponding to the application
     */
    icon: () => Promise<Response>;
    /**
     * Launches the app. Can accept launch parameters for deep linking.
     * @param {{}} options Launch parameters (for deep linking)
     */
    launch: (options?: LaunchOptions) => Promise<Response>;
    /**
     * Exits the current channel, and launches the Channel Store details screen of the app.
     */
    store: () => Promise<Response>;
    /**
     * Exits the current channel, and launches the Channel Store details screen of the app (provided the app is not installed).
     */
    install: () => Promise<Response>;
    /**
     * Sends custom events to the current application
     * @param {{}} options Input parameters
     */
    input: (options: InputOptions) => Promise<Response>;
}
