import { DeviceRegistrationStatus } from './';
export interface IDeviceRegistrationCreate {
    /**
     * Object for custom fragments
     */
    customProperties?: {
        [key: string]: any;
    };
    /**
     * Identifies the owner of the object
     */
    owner?: string;
    /**
     * Shows the server-side creation time of the object
     */
    creationTime?: string;
    /**
     * Identifies the target group
     */
    groupId?: string;
    /**
     * Unique identifier
     */
    id: string;
    /**
     * Identifies the type of request, e.g.: c8y_DataBroker. For device requests value is normally skipped.
     */
    type?: string;
}
export interface IDeviceRegistration extends IDeviceRegistrationCreate {
    /**
     * Link to this resource
     */
    self: string;
    /**
     * Possible state of device registration
     */
    status: DeviceRegistrationStatus;
    /**
     * Identifies the tenant
     */
    tenantId: string;
    /**
     * Security token for a device may be required to register successfully
     */
    securityToken?: string;
}
export interface IDeviceRegistrationAccept {
    /**
     * Unique identifier of accepted device registration
     */
    id: string;
    /**
     * Success state of device registration
     */
    successful: boolean;
    /**
     * Text to describe an error that occurred while registering the device
     */
    error?: string;
}
export interface IDeviceRegistrationLimit {
    /**
     * Indicates if the limit is reached
     */
    isReached: boolean;
    /**
     * Shows the current limit
     */
    limit?: number;
    /**
     * Shows the current registered device count
     */
    deviceCount?: number;
}
//# sourceMappingURL=IDeviceRegistration.d.ts.map