import { StateObject } from "@hpcc-js/util";
import { IConnection, IOptions } from "../connection.ts";
import { WsSMC, SMCService } from "../services/wsSMC.ts";
import { Workunit } from "./workunit.ts";
export interface ActivityEx {
}
export type UActivityState = WsSMC.ActivityResponse & ActivityEx;
export type IActivityState = WsSMC.ActivityResponse | ActivityEx;
export declare class Activity extends StateObject<UActivityState, IActivityState> implements UActivityState {
    protected connection: SMCService;
    get properties(): UActivityState;
    get Exceptions(): WsSMC.Exceptions;
    get Build(): string;
    get ThorClusterList(): WsSMC.ThorClusterList;
    get RoxieClusterList(): WsSMC.RoxieClusterList;
    get HThorClusterList(): WsSMC.HThorClusterList;
    get DFUJobs(): WsSMC.DFUJobs;
    get Running(): WsSMC.Running;
    get BannerContent(): string;
    get BannerColor(): string;
    get BannerSize(): string;
    get BannerScroll(): string;
    get ChatURL(): string;
    get ShowBanner(): number;
    get ShowChatURL(): number;
    get SortBy(): string;
    get Descending(): boolean;
    get SuperUser(): boolean;
    get AccessRight(): string;
    get ServerJobQueues(): WsSMC.ServerJobQueues;
    get ActivityTime(): string;
    get DaliDetached(): boolean;
    static attach(optsConnection: IOptions | IConnection | SMCService, state?: IActivityState): Activity;
    protected constructor(optsConnection: IOptions | IConnection | SMCService);
    runningWorkunits(clusterName?: string): Workunit[];
    setBanner(request: Partial<WsSMC.SetBanner>): Promise<Activity>;
    lazyRefresh: () => Promise<this>;
    refresh(): Promise<this>;
}
