'datetime']; } public function user(): BelongsTo { return $this->belongsTo(User::class); } public function zone(): BelongsTo { return $this->belongsTo(Zone::class); } public function deviceType(): BelongsTo { return $this->belongsTo(DeviceType::class); } /** Rules that this device is the target action of. */ public function targetedRules(): HasMany { return $this->hasMany(AutomationRule::class, 'target_device_id'); } /** Rules that watch this device's readings. */ public function watchingRules(): HasMany { return $this->hasMany(AutomationRule::class, 'condition_source_device_id'); } }