JFIF  x x C         C     "        } !1AQa "q2#BR$3br %&'()*456789:CDEFGHIJSTUVWXYZcdefghijstuvwxyz        w !1AQ aq"2B #3Rbr{ gilour

File "HasParameters.php"

Full Path: /home/palsarh/web/palsarh.in/public_html/vendor/cuyz/valinor/src/Mapper/Tree/Message/HasParameters.php
File size: 1014 B
MIME-type: text/x-php
Charset: utf-8

<?php

declare(strict_types=1);

namespace CuyZ\Valinor\Mapper\Tree\Message;

/**
 * This interface can be implemented by a message to provide parameters that can
 * be used as placeholders in the message's body.
 *
 * ```php
 * use CuyZ\Valinor\Mapper\Tree\Message\Message;
 * use CuyZ\Valinor\Mapper\Tree\Message\HasParameters;
 *
 * final class SomeMessage implements Message, HasParameters
 * {
 *     private string $someParameter;
 *
 *     public function __construct(string $someParameter)
 *     {
 *         $this->someParameter = $someParameter;
 *     }
 *
 *     public function body(): string
 *     {
 *         return 'Some message with {some_parameter}';
 *     }
 *
 *     public function parameters(): array
 *     {
 *         return [
 *             'some_parameter' => $this->someParameter,
 *         ];
 *     }
 * }
 * ```
 *
 * @api
 */
interface HasParameters extends Message
{
    /**
     * @pure
     * @return array<string, string>
     */
    public function parameters(): array;
}