> ## Documentation Index
> Fetch the complete documentation index at: https://docsuncv2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# firesignal

Fires every listener connected to a signal with the arguments you pass in.

```luau theme={null}
firesignal(signal: RBXScriptSignal, ...: any): ()
```

Every callback registered with `signal:Connect(fn)` runs as if Roblox had raised the signal itself. Coroutines yielded on `signal:Wait()` do not resume - only `:Connect` callbacks fire.

Most commonly used to fire a handler the game wouldn't trigger itself - automation, or bypassing checks the game gates behind a signal.

## Parameters

| Parameter | Type              | Description                                  |
| --------- | ----------------- | -------------------------------------------- |
| `signal`  | `RBXScriptSignal` | The signal whose listeners should fire.      |
| `...`     | `any`             | Args passed as-is to each listener callback. |

## Returns

<code title="the function does not return a value.">void</code>

## Example

You can fire any signal directly, even one the game's own code would never trigger. Connect a callback to a `BindableEvent`, then raise its signal from your script.

<CodeGroup>
  ```luau Example 1 theme={null}
  <<<<<<< HEAD
  firesignal(workspace.ChildAdded)
  =======
  -- firesignal(signal: RBXScriptSignal, ...: any): ()
  >>>>>>> 50e30f53759b0538759af25c9b271514aa2c9290
  ```

  ```luau Example 2 theme={null}
  local BindableEvent = Instance.new("BindableEvent")

  BindableEvent.Event:Connect(function(a, ...)
      if a == "owner" then
          print("WHITELISTED USER", ...)
      end
  end)

  firesignal(BindableEvent.Event, "owner", "hi")
  ```
</CodeGroup>

<Tip>
  Always check parameters and return values when working with this library function.
</Tip>
