1<?php
2
3/** @generate-class-entries */
4
5/** @not-serializable */
6class Transliterator
7{
8    /**
9     * @var int
10     * @cvalue TRANSLITERATOR_FORWARD
11     */
12    public const FORWARD = UNKNOWN;
13    /**
14     * @var int
15     * @cvalue TRANSLITERATOR_REVERSE
16     */
17    public const REVERSE = UNKNOWN;
18
19    public readonly string $id;
20
21    final private function __construct() {}
22
23    /**
24     * @tentative-return-type
25     * @alias transliterator_create
26     */
27    public static function create(string $id, int $direction = Transliterator::FORWARD): ?Transliterator {}
28
29    /**
30     * @tentative-return-type
31     * @alias transliterator_create_from_rules
32     */
33    public static function createFromRules(string $rules, int $direction = Transliterator::FORWARD): ?Transliterator {}
34
35    /**
36     * @tentative-return-type
37     * @alias transliterator_create_inverse
38     */
39    public function createInverse(): ?Transliterator {}
40
41    /**
42     * @return array<int, string>|false
43     * @tentative-return-type
44     * @alias transliterator_list_ids
45     */
46    public static function listIDs(): array|false {}
47
48    /**
49     * @tentative-return-type
50     * @alias transliterator_transliterate
51     */
52    public function transliterate(string $string, int $start = 0, int $end = -1): string|false {}
53
54    /**
55     * @tentative-return-type
56     * @alias transliterator_get_error_code
57     */
58    public function getErrorCode(): int|false {}
59
60    /**
61     * @tentative-return-type
62     * @alias transliterator_get_error_message
63     */
64    public function getErrorMessage(): string|false {}
65}
66