<?php

declare(strict_types=1);

namespace App\Scolarite\Infrastructure\Api\Resource;

use ApiPlatform\Metadata\ApiProperty;
use ApiPlatform\Metadata\ApiResource;
use ApiPlatform\Metadata\GetCollection;
use App\Scolarite\Infrastructure\Api\Provider\CompetencyCollectionProvider;

#[ApiResource(
    shortName: 'Competency',
    operations: [
        new GetCollection(
            uriTemplate: '/competencies',
            provider: CompetencyCollectionProvider::class,
            name: 'get_competency_list',
        ),
    ],
)]
final class CompetencyResource
{
    #[ApiProperty(identifier: true)]
    public ?string $id = null;

    public ?string $frameworkId = null;

    public ?string $frameworkName = null;

    public ?string $code = null;

    public ?string $name = null;

    public ?string $description = null;

    public ?string $parentId = null;

    public int $sortOrder = 0;
}
