/** * Session Stop Request. * * Request to capture work at the end of a session. */ import type { IRequest } from '../IMediator'; import type { SessionStopReason, ISOTimestamp } from '../../../domain'; /** * A suggested action for the user. */ export interface ISessionStopSuggestion { /** Action identifier */ readonly action: string; /** Human-readable description */ readonly message: string; /** CLI command to execute the action */ readonly command: string; /** Number of items this suggestion applies to */ readonly count?: number; } /** * Result from handling a session stop request. */ export interface ISessionStopResult { /** Human-readable message about what was captured */ readonly message: string; /** Number of facts captured */ readonly factsCaptured: number; /** Whether capture was skipped (e.g., no significant work) */ readonly skipped: boolean; /** Reason for skipping, if applicable */ readonly skipReason?: string; /** Suggested follow-up actions for the user */ readonly suggestions?: readonly ISessionStopSuggestion[]; } /** * Request to stop a session and capture work. */ export declare class SessionStopRequest implements IRequest { /** Why the session stopped */ readonly reason: SessionStopReason; /** When the session stopped */ readonly timestamp: ISOTimestamp; /** Optional session identifier */ readonly sessionId?: string | undefined; /** Optional transcript path for parsing */ readonly transcriptPath?: string | undefined; readonly __responseType?: ISessionStopResult; constructor( /** Why the session stopped */ reason: SessionStopReason, /** When the session stopped */ timestamp: ISOTimestamp, /** Optional session identifier */ sessionId?: string | undefined, /** Optional transcript path for parsing */ transcriptPath?: string | undefined); /** * Create from a session stop event. */ static fromEvent(event: { reason: SessionStopReason; timestamp: ISOTimestamp; sessionId?: string; }, transcriptPath?: string): SessionStopRequest; } //# sourceMappingURL=SessionStopRequest.d.ts.map