A marker property to identify this as a signal-like object.
Get the current value of the signal. If done inside a reactive context (computed signal or effect), the signal will be tracked as a dependency.
Register a listener that will be called when the signal's value changes.
Unregister all listeners that were previously registered.
Unregister a listener that was previously registered.
Describes a signal that can be read from.
The important part to understand is
signal.get(). The rest are intended to be called by library code, although you can call them if you want to.