Home / Type/ TypedEventEmitter Type — astro Architecture

TypedEventEmitter Type — astro Architecture

Architecture documentation for the TypedEventEmitter type/interface in typed-emitter.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  1ab2943c_fae0_3f57_bbc6_5b8c14f9be78["TypedEventEmitter"]
  494be71a_3d14_c591_ec67_3282e8c92311["typed-emitter.ts"]
  1ab2943c_fae0_3f57_bbc6_5b8c14f9be78 -->|defined in| 494be71a_3d14_c591_ec67_3282e8c92311
  style 1ab2943c_fae0_3f57_bbc6_5b8c14f9be78 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/types/typed-emitter.ts lines 27–47

export interface TypedEventEmitter<Events extends EventMap> {
	addListener<E extends keyof Events>(event: E, listener: Events[E]): this;
	on<E extends keyof Events>(event: E, listener: Events[E]): this;
	once<E extends keyof Events>(event: E, listener: Events[E]): this;
	prependListener<E extends keyof Events>(event: E, listener: Events[E]): this;
	prependOnceListener<E extends keyof Events>(event: E, listener: Events[E]): this;

	off<E extends keyof Events>(event: E, listener: Events[E]): this;
	removeAllListeners<E extends keyof Events>(event?: E): this;
	removeListener<E extends keyof Events>(event: E, listener: Events[E]): this;

	emit<E extends keyof Events>(event: E, ...args: Parameters<Events[E]>): boolean;
	// The sloppy `eventNames()` return type is to mitigate type incompatibilities - see #5
	eventNames(): (keyof Events | string | symbol)[];
	rawListeners<E extends keyof Events>(event: E): Events[E][];
	listeners<E extends keyof Events>(event: E): Events[E][];
	listenerCount<E extends keyof Events>(event: E): number;

	getMaxListeners(): number;
	setMaxListeners(maxListeners: number): this;
}

Frequently Asked Questions

What is the TypedEventEmitter type?
TypedEventEmitter is a type/interface in the astro codebase, defined in packages/astro/src/types/typed-emitter.ts.
Where is TypedEventEmitter defined?
TypedEventEmitter is defined in packages/astro/src/types/typed-emitter.ts at line 27.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free