import GRPCClient from "./GRPCClient"; import IClientSidecar from "../../../interfaces/Client/IClientSidecar"; /** * gRPC control for sending signals to the Dapr runtime. * * Internal utility for lifecycle management operations like graceful shutdown. * Sends control signals directly to the Dapr sidecar process. * * @internal */ export default class GRPCClientSidecar implements IClientSidecar { /** * Reference to the underlying gRPC client. */ client: GRPCClient; /** * Creates a gRPC sidecar control instance. * * @param client - The gRPC client instance * * @internal */ constructor(client: GRPCClient); /** * Sends a graceful shutdown signal to the Dapr sidecar. * * @returns Promise resolving when shutdown signal is sent * * @throws Rejects if shutdown signal fails * * @internal */ shutdown(): Promise; /** * Checks if the Dapr sidecar is running and responsive. * * @param client - The gRPC client to use for the check * @returns Promise resolving to true if sidecar is running, false otherwise * * @internal */ static isStarted(client: GRPCClient): Promise; }