'boolean', ]; public function company(): BelongsTo { return $this->belongsTo(FilamentCompanies::companyModel(), 'company_id'); } public function owner(): BelongsTo { return $this->company->owner; } public function currency(): BelongsTo { return $this->belongsTo(Currency::class, 'currency_code', 'code'); } public function createdBy(): BelongsTo { return $this->belongsTo(FilamentCompanies::userModel(), 'created_by'); } public function updatedBy(): BelongsTo { return $this->belongsTo(FilamentCompanies::userModel(), 'updated_by'); } public function default_settings(): HasMany { return $this->hasMany(DefaultSetting::class, 'account_id', 'id'); } public static function getAccountTypes(): array { return [ 'checking' => 'Checking', 'savings' => 'Savings', 'money_market' => 'Money Market', 'certificate_of_deposit' => 'Certificate of Deposit', 'credit_card' => 'Credit Card', ]; } public static function getAccountStatuses(): array { return [ 'open' => 'Open', 'active' => 'Active', 'dormant' => 'Dormant', 'restricted' => 'Restricted', 'closed' => 'Closed', ]; } protected static function newFactory(): Factory { return AccountFactory::new(); } }