Grand Project Overview

Minion minion-roleassignment-da0e05486155

Status: Unknown

Workstream: None

Short Task: RoleAssignment

Result summary: <?php declare(strict_types=1); namespace TheGrandProject\Framework\Authentication; final class RoleAssignment { /** * @param array<string, mixed> $metadata */ public function __construct( private readonly string $assignmentId, private readonly string $roleKey, private readonly ?string $companyId = null, private readonly ?string $assignedBy = null, private readonly ?\DateTimeImmutable $assignedAt = null, private readonly bool $a

<?php

declare(strict_types=1);

namespace TheGrandProject\Framework\Authentication;

final class RoleAssignment
{
    /**
     * @param array<string, mixed> $metadata
     */
    public function __construct(
        private readonly string $assignmentId,
        private readonly string $roleKey,
        private readonly ?string $companyId = null,
        private readonly ?string $assignedBy = null,
        private readonly ?\DateTimeImmutable $assignedAt = null,
        private readonly bool $active = true,
        private readonly array $metadata = [],
    ) {
    }

    public function assignmentId(): string
    {
        return $this->assignmentId;
    }

    public function roleKey(): string
    {
        return $this->roleKey;
    }

    public function companyId(): ?string
    {
        return $this->companyId;
    }

    public function assignedBy(): ?string
    {
        return $this->assignedBy;
    }

    public function assignedAt(): ?\DateTimeImmutable
    {
        return $this->assignedAt;
    }

    public function active(): bool
    {
        return $this->active;
    }

    /**
     * @return array<string, mixed>
     */
    public function metadata(): array
    {
        return $this->metadata;
    }
}

Warnings: None