/**
 * Lifecycle interface for providers
 * Combines mounting and disposing capabilities into a single interface
 */
export interface IProviderLifecycle {
	/**
	 * Mount/initialize the provider
	 * Called when the provider is registered and should be made ready for use
	 */
	mount(): Promise<void>;

	/**
	 * Dispose/cleanup the provider
	 * Called when the provider is being removed or application is shutting down
	 */
	dispose(): Promise<void>;
}
