import { default as CxRange } from '../../../../atoms/src/components/range/range.ts';
import { default as CortexElement } from '../../../../base/src/cortex-element.ts';
import { CSSResultGroup, TemplateResult } from 'lit';

/**
 * @summary A component to manage a single service in the cluster.
 *
 * @dependency cx-range
 *
 */
export default class CxClusterManagementService extends CortexElement {
    static readonly styles: CSSResultGroup;
    private readonly localize;
    static readonly dependencies: {
        'cx-range': typeof CxRange;
    };
    serviceId: string;
    minNodeCount: number;
    maxNodeCount: number;
    runningCount: number;
    desiredCount: number;
    visualDesiredCount: number;
    readonly: boolean;
    private handleChange;
    private handleChangeCommitted;
    render(): TemplateResult;
}
export type CxClusterManagementServiceChange = CustomEvent<{
    count: number;
    serviceId: string;
}>;
export type CxClusterManagementServiceChangeCommitted = CustomEvent<{
    count: number;
    serviceId: string;
}>;
declare global {
    interface HTMLElementTagNameMap {
        'cx-cluster-management-service': CxClusterManagementService;
    }
    interface GlobalEventHandlersEventMap {
        'cx-cluster-management-service-change': CxClusterManagementServiceChange;
        'cx-cluster-management-service-change-committed': CxClusterManagementServiceChangeCommitted;
    }
}
