import * as storage from '../storage'; import * as siProtocol from '../siProtocol'; import { ISiStation, SiStationMode, SiStationModel } from './ISiStation'; import { ISiTargetMultiplexer, SiTargetMultiplexerTarget } from './ISiTargetMultiplexer'; export interface ISiStationStorageFields { code: number; mode: keyof typeof SiStationMode; beeps: boolean; flashes: boolean; autoSend: boolean; extendedProtocol: boolean; serialNumber: number; firmwareVersion: number; buildDate: Date; deviceModel: keyof typeof SiStationModel; memorySize: number; batteryDate: Date; batteryCapacity: number; batteryState: number; backupPointer: number; siCard6Mode: number; memoryOverflow: number; lastWriteDate: Date; autoOffTimeout: number; refreshRate: number; powerMode: number; interval: number; wtf: number; program: number; handshake: boolean; sprint4ms: boolean; passwordOnly: boolean; stopOnFullBackup: boolean; autoReadout: boolean; sleepDay: number; sleepSeconds: number; workingMinutes: number; } export declare const siStationStorageLocations: storage.ISiStorageLocations; export declare const siStationStorageDefinition: import("../storage/interfaces").ISiStorageDefinition; export declare abstract class BaseSiStation { siTargetMultiplexer: ISiTargetMultiplexer; readonly multiplexerTarget: T; storage: storage.ISiStorage; protected static fromSiTargetMultiplexerWithGivenTarget(multiplexer: ISiTargetMultiplexer, multiplexerTarget: U, createNewInstance: () => ISiStation): ISiStation; constructor(siTargetMultiplexer: ISiTargetMultiplexer, multiplexerTarget: T); get ident(): string; sendMessage(message: siProtocol.SiMessage, numResponses?: number, timeoutInMiliseconds?: number): Promise; readInfo(): Promise; getField(infoName: Field): storage.ISiStorageLocations[Field]; getInfo(infoName: Field): storage.ISiFieldValue | undefined; setInfo(infoName: Field, newValue: storage.ISiFieldValue | ISiStationStorageFields[Field]): void; writeChanges(): Promise; atomically(doThings: () => void): Promise; writeDiff(oldStorage: storage.ISiStorageData, newStorage: storage.ISiStorageData): Promise; getTime(): Promise; setTime(newTime: Date): Promise; signal(countArg: number): Promise; powerOff(): Promise; } //# sourceMappingURL=BaseSiStation.d.ts.map