<?php

namespace GriffinForms\Includes\Ai;

class OperationItem
{
    public string  $handler_key;
    public array   $config;

    /** 'waiting'|'working'|'done'|'failed' */
    public string  $status;

    /** null until executed; populated after handler->handle() returns */
    public ?array  $result;

    /** Human-readable label for batch UI */
    public string  $label;

    public function __construct(string $handler_key, array $config, string $label = '')
    {
        $this->handler_key = $handler_key;
        $this->config      = $config;
        $this->status      = 'waiting';
        $this->result      = null;
        $this->label       = $label;
    }
}
