|null $meta */ public function __construct( public readonly string $module, public readonly int $versionId, public readonly string $versionLabel, public readonly ?array $meta, public readonly int $emittedAtMs, ) {} /** @return array */ public function broadcastOn(): array { return [new Channel('lottery-hall')]; } public function broadcastAs(): string { return 'play.catalog_updated'; } /** * @return array{module: string, version_id: int, version_label: string, meta: array|null, message: string, emitted_at_ms: int} */ public function broadcastWith(): array { return [ 'module' => $this->module, 'version_id' => $this->versionId, 'version_label' => $this->versionLabel, 'meta' => $this->meta, 'message' => '玩法配置已更新,请刷新后下注', 'emitted_at_ms' => $this->emittedAtMs, ]; } }