import { JsonRpc } from '../common/jsonrpc';
type Account = {
    chain: string;
    chainId: number;
    account: string;
};
type TrustedUser = {
    account: string;
};
type Dapplet = {
    registry: string;
    moduleName: string;
};
export declare class DappletsProvider {
    private _rpc;
    version: string;
    constructor(_rpc: JsonRpc);
    getAccounts(): Promise<Account[]>;
    connectWallet(): Promise<void>;
    openPopup(): Promise<void>;
    openOverlay(): Promise<void>;
    closeOverlay(): Promise<void>;
    toggleOverlay(): Promise<void>;
    getTrustedUsers(): Promise<TrustedUser[]>;
    addTrustedUser(account: string): Promise<void>;
    removeTrustedUser(account: string): Promise<void>;
    getMyDapplets(): Promise<Dapplet[]>;
    addMyDapplet(registryUrl: string, moduleName: string): Promise<void>;
    removeMyDapplet(registryUrl: string, moduleName: string): Promise<void>;
    openDeveloperOverlay(): Promise<void>;
    wipeAllExtensionData(): Promise<void>;
    addRegistry(url: string, isDev: boolean): Promise<void>;
    removeRegistry(url: string): Promise<void>;
    onTrustedUsersChanged(callback: () => void): void;
    onMyDappletsChanged(callback: () => void): void;
    onUninstall(callback: () => void): void;
}
export {};
