Documentation / @eventkit/base / ScheduledAction
Class: ScheduledAction<T>
Represents an action that will be executed later. The callback that's passed in will be called at most once whenever execute()
is called.
ScheduledAction implements PromiseLike, which means that when the action is used as a promise (i.e. when calling then()
or being the subject of an await statement), the action will wait until execute()
is called and then resolve or reject based on the callback's return value. Multiple accesses of the action's promise will return the same promise, but the action will only execute whenever execute()
is called and the callback is resolved.
Extended by
Type Parameters
Type Parameter |
---|
T |
Implements
PromiseLike
<T
>
Constructors
Constructor
new ScheduledAction<T>(callback): ScheduledAction<T>
Parameters
Parameter | Type | Description |
---|---|---|
callback | () => PromiseOrValue <T > | The function that will be called when the action is executed. |
Returns
ScheduledAction
<T
>
Methods
execute()
execute(): Promise<void>
Executes the action. This will call the callback and resolve or reject the action's promise based on the callback's return value. If the action has already been executed, this method will return a promise representing the already executed callback.
Returns
Promise
<void
>
then()
then<TResult1, TResult2>(onfulfilled?, onrejected?): PromiseLike<TResult1 | TResult2>
Returns a promise that will resolve or reject based on the callback's return value.
Type Parameters
Type Parameter | Default type |
---|---|
TResult1 | T |
TResult2 | never |
Parameters
Parameter | Type |
---|---|
onfulfilled ? | null | (value ) => TResult1 | PromiseLike <TResult1 > |
onrejected ? | null | (reason ) => TResult2 | PromiseLike <TResult2 > |
Returns
PromiseLike
<TResult1
| TResult2
>
Implementation of
PromiseLike.then