/// <reference path="./sigApi.AlarmInfo.d.ts" />
/// <reference path="./sigApi.ApiBase.d.ts" />

declare namespace SigApi {
    interface ApiAlarmInfo extends ApiBase {
        /**
         * AlarmInfo ready promise per station
         * 
         * @returns {Map<{number}, {Promise}>} key: {number} stationId, value: {Promise} readyPromise
         */
        getReadyPromises(): Map<number, Promise<void>>
        /**
         * @param {number} varNo 
         * @param {number} [alarmNr] only required for project with alarm range feature
         * @returns {AlarmInfo|null}
         */
        getAlarmInfo(varNo: number, alarmNr?: number): AlarmInfo | null
        /**
         * @returns {AlarmInfo[]}
         */
        getAlarmInfos(): AlarmInfo[]
        /**
         * @param {*} object 
         * @returns {boolean}
         */
        instanceofAlarmInfo(object: any): boolean
        /**
         * @param {*} object 
         * @returns {boolean}
         */
        instanceofAlarmInfoParameter(object: any): boolean
    }
}
