/**
  Juju AllModelWatcher version 4.
  This facade is available on:
    Controllers

  NOTE: This file was generated using the Juju schema
  from Juju 3.3 at the git SHA 65fa4c1ee5.
  Do not manually edit this file.
*/
import { ConnectionInfo, Transport } from "../../client.js";
import { Facade } from "../../types.js";
export interface AllWatcherNextResults {
    deltas: [string, string, unknown][];
}
export interface Delta {
    entity: AdditionalProperties;
    removed: boolean;
}
export interface AdditionalProperties {
    [key: string]: any;
}
/**
  SrvAllWatcher defines the API methods on a state.Multiwatcher.
  which watches any changes to the state. Each client has its own
  current set of watchers, stored in resources. It is used by both
  the AllWatcher and AllModelWatcher facades.
*/
declare class AllModelWatcherV4 implements Facade {
    static NAME: string;
    static VERSION: number;
    NAME: string;
    VERSION: number;
    _transport: Transport;
    _info: ConnectionInfo;
    constructor(transport: Transport, info: ConnectionInfo);
    /**
      Next will return the current state of everything on the first call
      and subsequent calls will
    */
    next(params: {
        id: string;
    }): Promise<AllWatcherNextResults>;
    /**
      Stop stops the watcher.
    */
    stop(params: {
        id: string;
    }): Promise<any>;
}
export default AllModelWatcherV4;
