/**
 *   Generated file. Do not edit
 */
import { TapResponse } from '@iotize/tap';
import { AvailablePowerSource } from './models';
import { AbstractService, ServiceCallType } from '@iotize/tap';
export declare class DeviceService extends AbstractService {
    resources: {
        getManufacturer: ServiceCallType<void, string>;
        getFirmwareFlavor: ServiceCallType<void, string>;
        getSerialNumber: ServiceCallType<void, string>;
        getFirmwareVersion: ServiceCallType<void, string>;
        /**
         * Get device serial number
         *
         * LWM2M path: /3//2
         *
         * @tapVersion(">=")
         * @return
         */
        reboot: ServiceCallType<void, void>;
        factoryReset: ServiceCallType<void, void>;
        getAvailablePowerSource: ServiceCallType<void, AvailablePowerSource>;
        getPowerSourceVoltage: ServiceCallType<void, number>;
        getMemoryFree: ServiceCallType<void, number>;
        getLastErrorCode: ServiceCallType<void, number>;
        postLastErrorCode: ServiceCallType<void, void>;
        resetLastErrorCode: ServiceCallType<void, void>;
        getCurrentTime: ServiceCallType<void, string>;
        putCurrentTime: ServiceCallType<number, void>;
    };
    /**
     * Get manufacturer name
     *
     * LWM2M path: /3//0
     *
     * @tapVersion(">=")
     * @return
     */
    getManufacturer(): Promise<TapResponse<string>>;
    /**
     *
     *
     * LWM2M path: /3//0
     *
     * @tapVersion(">=")
     * @return call options
     */
    getManufacturerCall(): ServiceCallType;
    /**
     * Get device firmware flavor name
     *
     * LWM2M path: /3//1
     *
     * @tapVersion(">=")
     * @return
     */
    getFirmwareFlavor(): Promise<TapResponse<string>>;
    /**
     *
     *
     * LWM2M path: /3//1
     *
     * @tapVersion(">=")
     * @return call options
     */
    getFirmwareFlavorCall(): ServiceCallType;
    /**
     * Get device serial number
     *
     * LWM2M path: /3//2
     *
     * @tapVersion(">=")
     * @return
     */
    getSerialNumber(): Promise<TapResponse<string>>;
    /**
     *
     *
     * LWM2M path: /3//2
     *
     * @tapVersion(">=")
     * @return call options
     */
    getSerialNumberCall(): ServiceCallType;
    /**
     * Get device firmware version
     *
     * LWM2M path: /3//3
     *
     * @tapVersion(">=")
     * @return
     */
    getFirmwareVersion(): Promise<TapResponse<string>>;
    /**
     *
     *
     * LWM2M path: /3//3
     *
     * @tapVersion(">=")
     * @return call options
     */
    getFirmwareVersionCall(): ServiceCallType;
    /**
     * Reboot device
     *
     * LWM2M path: /3//4
     *
     * @tapVersion(">=")
     * @return
     */
    reboot(): Promise<TapResponse<void>>;
    /**
     *
     *
     * LWM2M path: /3//4
     *
     * @tapVersion(">=")
     * @return call options
     */
    rebootCall(): ServiceCallType;
    /**
     * Factory reset
     *
     * LWM2M path: /3//5
     *
     * @tapVersion(">=")
     * @return
     */
    factoryReset(): Promise<TapResponse<void>>;
    /**
     *
     *
     * LWM2M path: /3//5
     *
     * @tapVersion(">=")
     * @return call options
     */
    factoryResetCall(): ServiceCallType;
    /**
     * Get available power sources
     *
     * LWM2M path: /3//6
     *
     * @tapVersion(">=")
     * @return
     */
    getAvailablePowerSource(): Promise<TapResponse<AvailablePowerSource>>;
    /**
     *
     *
     * LWM2M path: /3//6
     *
     * @tapVersion(">=")
     * @return call options
     */
    getAvailablePowerSourceCall(): ServiceCallType;
    /**
     * Get power source voltage
     *
     * LWM2M path: /3//7
     *
     * @tapVersion(">=")
     * @return
     */
    getPowerSourceVoltage(): Promise<TapResponse<number>>;
    /**
     *
     *
     * LWM2M path: /3//7
     *
     * @tapVersion(">=")
     * @return call options
     */
    getPowerSourceVoltageCall(): ServiceCallType;
    /**
     * Get device memory free
     *
     * LWM2M path: /3//10
     *
     * @tapVersion(">=")
     * @return
     */
    getMemoryFree(): Promise<TapResponse<number>>;
    /**
     *
     *
     * LWM2M path: /3//10
     *
     * @tapVersion(">=")
     * @return call options
     */
    getMemoryFreeCall(): ServiceCallType;
    /**
     * Get device last error code
     *
     * LWM2M path: /3//11
     *
     * @tapVersion(">=")
     * @return
     */
    getLastErrorCode(): Promise<TapResponse<number>>;
    /**
     *
     *
     * LWM2M path: /3//11
     *
     * @tapVersion(">=")
     * @return call options
     */
    getLastErrorCodeCall(): ServiceCallType;
    /**
     * ???
     *
     * LWM2M path: /3//11
     *
     * @tapVersion(">=")
     * @return
     */
    postLastErrorCode(): Promise<TapResponse<void>>;
    /**
     *
     *
     * LWM2M path: /3//11
     *
     * @tapVersion(">=")
     * @return call options
     */
    postLastErrorCodeCall(): ServiceCallType;
    /**
     * Reset device last error code
     *
     * LWM2M path: /3//12
     *
     * @tapVersion(">=")
     * @return
     */
    resetLastErrorCode(): Promise<TapResponse<void>>;
    /**
     *
     *
     * LWM2M path: /3//12
     *
     * @tapVersion(">=")
     * @return call options
     */
    resetLastErrorCodeCall(): ServiceCallType;
    /**
     * Get device current time
     *
     * LWM2M path: /3//13
     *
     * @tapVersion(">=")
     * @return
     */
    getCurrentTime(): Promise<TapResponse<string>>;
    /**
     *
     *
     * LWM2M path: /3//13
     *
     * @tapVersion(">=")
     * @return call options
     */
    getCurrentTimeCall(): ServiceCallType;
    /**
     * Set device current time
     *
     * LWM2M path: /3//13
     *
     * @tapVersion(">=")
     * @param time input
     * @return
     */
    putCurrentTime(time: number): Promise<TapResponse<void>>;
    /**
     *
     *
     * LWM2M path: /3//13
     *
     * @tapVersion(">=")
     * @param time input
     * @return call options
     */
    putCurrentTimeCall(time: number): ServiceCallType;
}
