@yfwu2020/dsh-selection-explain 0.13.0 → 0.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/README.md +3 -3
  2. package/lib/client.js +11899 -11398
  3. package/lib/client.js.map +4 -4
  4. package/lib/host/analyze-conclusion.js +115 -0
  5. package/lib/host/analyze-conclusion.js.map +1 -0
  6. package/lib/host/analyze-execution-types.js +2 -0
  7. package/lib/host/analyze-execution-types.js.map +1 -0
  8. package/lib/host/analyze-execution.js +166 -0
  9. package/lib/host/analyze-execution.js.map +1 -0
  10. package/lib/host/analyze-history.js +110 -0
  11. package/lib/host/analyze-history.js.map +1 -0
  12. package/lib/host/analyze-messages.js +95 -0
  13. package/lib/host/analyze-messages.js.map +1 -0
  14. package/lib/host/analyze-output.js +69 -0
  15. package/lib/host/analyze-output.js.map +1 -0
  16. package/lib/host/analyze-prompt.js +110 -0
  17. package/lib/host/analyze-prompt.js.map +1 -0
  18. package/lib/host/analyze-request.js +129 -0
  19. package/lib/host/analyze-request.js.map +1 -0
  20. package/lib/host/analyze-round.js +121 -0
  21. package/lib/host/analyze-round.js.map +1 -0
  22. package/lib/host/analyze-tool-execution.js +98 -0
  23. package/lib/host/analyze-tool-execution.js.map +1 -0
  24. package/lib/host/analyze-tools.js +79 -0
  25. package/lib/host/analyze-tools.js.map +1 -0
  26. package/lib/host/analyze-types.js +2 -0
  27. package/lib/host/analyze-types.js.map +1 -0
  28. package/lib/host/analyze.js +30 -977
  29. package/lib/host/analyze.js.map +1 -1
  30. package/lib/host/native-probe.js +66 -0
  31. package/lib/host/native-probe.js.map +1 -0
  32. package/lib/host/plugin.js +9 -10
  33. package/lib/host/plugin.js.map +1 -1
  34. package/lib/host/promote-seed.js +111 -0
  35. package/lib/host/promote-seed.js.map +1 -0
  36. package/lib/host/promote.js +53 -153
  37. package/lib/host/promote.js.map +1 -1
  38. package/lib/host/shot-capture.js +322 -0
  39. package/lib/host/shot-capture.js.map +1 -0
  40. package/lib/host/shot-geometry.js +183 -0
  41. package/lib/host/shot-geometry.js.map +1 -0
  42. package/lib/host/shot-platform.js +208 -0
  43. package/lib/host/shot-platform.js.map +1 -0
  44. package/lib/host/shot-service.js +127 -0
  45. package/lib/host/shot-service.js.map +1 -0
  46. package/lib/host/shot-types.js +5 -0
  47. package/lib/host/shot-types.js.map +1 -0
  48. package/lib/host/shot.js +117 -949
  49. package/lib/host/shot.js.map +1 -1
  50. package/lib/types/host/analyze-conclusion.d.ts +3 -0
  51. package/lib/types/host/analyze-execution-types.d.ts +54 -0
  52. package/lib/types/host/analyze-execution.d.ts +3 -0
  53. package/lib/types/host/analyze-history.d.ts +41 -0
  54. package/lib/types/host/analyze-messages.d.ts +15 -0
  55. package/lib/types/host/analyze-output.d.ts +8 -0
  56. package/lib/types/host/analyze-prompt.d.ts +15 -0
  57. package/lib/types/host/analyze-request.d.ts +28 -0
  58. package/lib/types/host/analyze-round.d.ts +7 -0
  59. package/lib/types/host/analyze-tool-execution.d.ts +4 -0
  60. package/lib/types/host/analyze-tools.d.ts +15 -0
  61. package/lib/types/host/analyze-types.d.ts +13 -0
  62. package/lib/types/host/analyze.d.ts +4 -4
  63. package/lib/types/host/native-probe.d.ts +10 -0
  64. package/lib/types/host/promote-seed.d.ts +24 -0
  65. package/lib/types/host/shot-capture.d.ts +11 -0
  66. package/lib/types/host/shot-geometry.d.ts +37 -0
  67. package/lib/types/host/shot-platform.d.ts +11 -0
  68. package/lib/types/host/shot-service.d.ts +17 -0
  69. package/lib/types/host/shot-types.d.ts +105 -0
  70. package/lib/types/host/shot.d.ts +14 -71
  71. package/native/window-list.c +139 -0
  72. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"shot.js","sourceRoot":"","sources":["../../src/host/shot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shot.js","sourceRoot":"","sources":["../../src/host/shot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { AnalyzeExecutionContext, AnalyzeStreamState } from './analyze-execution-types.js';
2
+ /** Recover a final answer from tool digests when normal rounds produced no body text. */
3
+ export declare function concludeAnalyze(env: AnalyzeExecutionContext, state: AnalyzeStreamState, roundEffort: string): Promise<void>;
@@ -0,0 +1,54 @@
1
+ import type { ContentBlock, Message } from '@deepseek-ai/dsh-llm';
2
+ import type { ServerResponse } from 'node:http';
3
+ import type { AnalyzeMessages } from './analyze-messages.js';
4
+ import type { AnalyzePrompt } from './analyze-prompt.js';
5
+ import type { PreparedAnalyzeRequest } from './analyze-request.js';
6
+ import type { AnalyzeToolPlan } from './analyze-tools.js';
7
+ import type { AnalyzeDependencies } from './analyze-types.js';
8
+ /** Stable request resources shared by round, tool and conclusion execution. */
9
+ export interface AnalyzeExecutionContext {
10
+ deps: AnalyzeDependencies;
11
+ request: PreparedAnalyzeRequest;
12
+ tools: AnalyzeToolPlan;
13
+ prompt: AnalyzePrompt;
14
+ messages: AnalyzeMessages;
15
+ res: ServerResponse;
16
+ controller: AbortController;
17
+ executionState: {
18
+ upstreamStarted: boolean;
19
+ };
20
+ clientClosedEarly: () => boolean;
21
+ }
22
+ export interface AnalyzeRoundDiagnostics {
23
+ round: number;
24
+ wrapUp: boolean;
25
+ ms: number;
26
+ raw: number;
27
+ emitted: number;
28
+ think: number;
29
+ finish: string;
30
+ tools: number;
31
+ tailChunks?: string[];
32
+ outTokens?: number;
33
+ }
34
+ /** Explicit cross-round state; helpers update the same streamed answer and tool history. */
35
+ export interface AnalyzeStreamState {
36
+ chars: number;
37
+ errored: boolean;
38
+ usage: unknown;
39
+ answer: string;
40
+ toolMessages: Message[];
41
+ recoveredMaterialBlocks: ContentBlock[];
42
+ toolContextTokens: number;
43
+ toolCalls: number;
44
+ errorMessage: string;
45
+ errorCode?: string;
46
+ toolDigestLines: string[];
47
+ roundDiag: AnalyzeRoundDiagnostics[];
48
+ conclusionInfo: {
49
+ tried: boolean;
50
+ chars: number;
51
+ rounds: number;
52
+ error: string;
53
+ };
54
+ }
@@ -0,0 +1,3 @@
1
+ import type { AnalyzeExecutionContext } from './analyze-execution-types.js';
2
+ /** Coordinate rounds and retries. History attachment recovery always precedes effort retries. */
3
+ export declare function executeAnalyze(env: AnalyzeExecutionContext): Promise<string | null>;
@@ -0,0 +1,41 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import type { Message } from '@deepseek-ai/dsh-llm';
3
+ import type { ChatMaterial, ChatTurn, ContextState } from '../chat-context.js';
4
+ import type { HistoryContentPlan } from './history-attachments.js';
5
+ import { readHistoryAttachments } from './history-attachments.js';
6
+ import type { AnalyzeBody, Route } from './types.js';
7
+ /** Mutable history and attachment admission state shared by context planning and retries. */
8
+ export declare class AnalyzeHistory {
9
+ readonly isChat: boolean;
10
+ contextState: ContextState;
11
+ readonly currentAttachments: ReturnType<typeof readHistoryAttachments>;
12
+ readonly rawHistory: ChatTurn[];
13
+ selectedHistory: ChatTurn[];
14
+ readonly catalog: ChatMaterial[];
15
+ readonly historySource: Route;
16
+ historyImages: {
17
+ kept: number;
18
+ omitted: number;
19
+ files: number;
20
+ };
21
+ historyHadAttachments: boolean;
22
+ historyDropped: boolean;
23
+ attachedPaths: Set<string>;
24
+ contextEstimate: number;
25
+ constructor(body: AnalyzeBody, isChat: boolean, historyStart: number, route: Route, contextState: ContextState);
26
+ /**
27
+ * 历史规划(纯计算):预算、降级、以及**这次请求真的进了消息的那些附件**。
28
+ * 每次都要能重算 —— 引用失效时会降级再跑一遍(见下面 errored 分支里的那一跳)。
29
+ */
30
+ planHistory(): HistoryContentPlan;
31
+ /** 重建历史消息。 */
32
+ buildHistoryMessages(): Message[];
33
+ /**
34
+ * 文件工具的访客名单:本轮附件与本小窗保存的文件材料目录。
35
+ * 材料目录中的旧文件可由 selection_material 恢复;不接纳任意外部路径。
36
+ *
37
+ * 路径由附件服务按内容哈希推出(不碰磁盘,纯路径计算,所以每次请求重算没有成本);
38
+ * 引用不合法就当场丢掉 —— 它本来也读不出来,让门禁拒掉即可。
39
+ */
40
+ collectAttachedPaths(ctx: Context): Set<string>;
41
+ }
@@ -0,0 +1,15 @@
1
+ import type { ContentBlock, Message } from '@deepseek-ai/dsh-llm';
2
+ import type { ServerResponse } from 'node:http';
3
+ import type { AnalyzePrompt } from './analyze-prompt.js';
4
+ import type { PreparedAnalyzeRequest } from './analyze-request.js';
5
+ import type { AnalyzeToolPlan } from './analyze-tools.js';
6
+ import type { AnalyzeDependencies } from './analyze-types.js';
7
+ export interface AnalyzeMessages {
8
+ memoryMessages: Message[];
9
+ baseMessage: Message;
10
+ questionContent: ContentBlock[];
11
+ openingMessages: Message[];
12
+ checkedMessages: (messages: Message[]) => Message[];
13
+ }
14
+ /** Compact chat memory if necessary, then construct the initial multimodal messages. */
15
+ export declare function prepareAnalyzeMessages(deps: AnalyzeDependencies, request: PreparedAnalyzeRequest, tools: AnalyzeToolPlan, prompt: AnalyzePrompt, res: ServerResponse, controller: AbortController): Promise<AnalyzeMessages | null>;
@@ -0,0 +1,8 @@
1
+ import type { ServerResponse } from 'node:http';
2
+ import type { AnalyzeStreamState } from './analyze-execution-types.js';
3
+ import type { AnalyzePrompt } from './analyze-prompt.js';
4
+ import type { PreparedAnalyzeRequest } from './analyze-request.js';
5
+ import type { AnalyzeToolPlan } from './analyze-tools.js';
6
+ export declare function startAnalyzeOutput(res: ServerResponse, request: PreparedAnalyzeRequest, tools: AnalyzeToolPlan, prompt: AnalyzePrompt): void;
7
+ /** Emit the existing empty-answer fallback and terminal diagnostics. */
8
+ export declare function finishAnalyzeOutput(res: ServerResponse, state: AnalyzeStreamState, clientClosedEarly: () => boolean): void;
@@ -0,0 +1,15 @@
1
+ import type { ServerResponse } from 'node:http';
2
+ import type { PreparedAnalyzeRequest } from './analyze-request.js';
3
+ import type { AnalyzeToolPlan } from './analyze-tools.js';
4
+ import type { AnalyzeDependencies } from './analyze-types.js';
5
+ export interface AnalyzePrompt {
6
+ stage: string;
7
+ isCode: boolean;
8
+ isShot: boolean;
9
+ systemPrompt: string;
10
+ sentEffort: string;
11
+ offSlotEffort: string;
12
+ routeKey: string;
13
+ }
14
+ /** Assemble the exact prompt prefix and map the requested effort to the selected model. */
15
+ export declare function prepareAnalyzePrompt(deps: AnalyzeDependencies, request: PreparedAnalyzeRequest, tools: AnalyzeToolPlan, res: ServerResponse): Promise<AnalyzePrompt>;
@@ -0,0 +1,28 @@
1
+ import type { IncomingMessage, ServerResponse } from 'node:http';
2
+ import type { ShotPromptScope } from '../prompts.js';
3
+ import { AnalyzeHistory } from './analyze-history.js';
4
+ import type { AnalyzeDependencies } from './analyze-types.js';
5
+ import { resolveChatCapacity } from './chat-context.js';
6
+ import type { AnalyzeBody, Route, SessionBackground } from './types.js';
7
+ export interface PreparedAnalyzeRequest {
8
+ body: AnalyzeBody;
9
+ text: string;
10
+ context: string;
11
+ label: string;
12
+ route: Route;
13
+ initialExplanation: string;
14
+ historyStart: number;
15
+ capacity: Awaited<ReturnType<typeof resolveChatCapacity>> | null;
16
+ background: SessionBackground | null;
17
+ isShotMode: boolean;
18
+ shotScope: ShotPromptScope;
19
+ shotFrame: boolean;
20
+ titleOnly: boolean;
21
+ userText: string;
22
+ effort: string;
23
+ question: string;
24
+ isChat: boolean;
25
+ history: AnalyzeHistory;
26
+ }
27
+ /** Validate, resolve route/background, and normalize request inputs before SSE starts. */
28
+ export declare function prepareAnalyzeRequest(req: IncomingMessage, res: ServerResponse, deps: AnalyzeDependencies, allow: () => boolean): Promise<PreparedAnalyzeRequest | null>;
@@ -0,0 +1,7 @@
1
+ import { BlockAssembler } from '@deepseek-ai/dsh-llm';
2
+ import type { AnalyzeExecutionContext, AnalyzeStreamState } from './analyze-execution-types.js';
3
+ /** Stream and filter one upstream round, preserving chunk and diagnostic event order. */
4
+ export declare function streamAnalyzeRound(env: AnalyzeExecutionContext, state: AnalyzeStreamState, round: number, wrapUp: boolean, roundEffort: string): Promise<{
5
+ assembler: BlockAssembler;
6
+ roundText: string;
7
+ }>;
@@ -0,0 +1,4 @@
1
+ import type { ContentBlock } from '@deepseek-ai/dsh-llm';
2
+ import type { AnalyzeExecutionContext, AnalyzeStreamState } from './analyze-execution-types.js';
3
+ /** Execute one round of allowed calls and admit restored materials into subsequent messages. */
4
+ export declare function executeAnalyzeTools(env: AnalyzeExecutionContext, state: AnalyzeStreamState, blocks: ContentBlock[], calls: ContentBlock[], round: number): Promise<void>;
@@ -0,0 +1,15 @@
1
+ import type { ToolSchema } from '@deepseek-ai/dsh-llm';
2
+ import type { PreparedAnalyzeRequest } from './analyze-request.js';
3
+ import type { AnalyzeDependencies } from './analyze-types.js';
4
+ export interface AnalyzeToolPlan {
5
+ agent: unknown;
6
+ agentScope: string;
7
+ sessionId: string;
8
+ toolSchemas: ToolSchema[];
9
+ toolFallbackUsed: boolean;
10
+ fetchBlockedSample: string;
11
+ wantsFsTools: boolean;
12
+ readRoot: string;
13
+ }
14
+ /** Resolve session scope, allowed tools, fetch availability and filesystem boundary. */
15
+ export declare function planAnalyzeTools(deps: AnalyzeDependencies, request: PreparedAnalyzeRequest): Promise<AnalyzeToolPlan>;
@@ -0,0 +1,13 @@
1
+ import type { Context } from '@deepseek-ai/cordis';
2
+ import type { Config } from './config.js';
3
+ import type { createHistoryStore } from './history-store.js';
4
+ import type { createModels } from './models.js';
5
+ import type { createSessions } from './sessions.js';
6
+ /** Instance-owned services; request state lives in PreparedAnalyzeRequest and AnalyzeHistory. */
7
+ export interface AnalyzeDependencies {
8
+ ctx: Context;
9
+ config: Config;
10
+ models: ReturnType<typeof createModels>;
11
+ sessions: ReturnType<typeof createSessions>;
12
+ historyStore: ReturnType<typeof createHistoryStore>;
13
+ }
@@ -1,9 +1,9 @@
1
- import type { createHistoryStore } from './history-store.js';
2
- import type { createSessions } from './sessions.js';
3
- import type { createModels } from './models.js';
4
1
  import type { Context } from '@deepseek-ai/cordis';
5
- import type { Config } from './config.js';
6
2
  import type { IncomingMessage, ServerResponse } from 'node:http';
3
+ import type { Config } from './config.js';
4
+ import type { createHistoryStore } from './history-store.js';
5
+ import type { createModels } from './models.js';
6
+ import type { createSessions } from './sessions.js';
7
7
  /** Owns analyze state for one plugin instance. */
8
8
  export declare function createAnalyze(ctx: Context, config: Config, models: ReturnType<typeof createModels>, sessions: ReturnType<typeof createSessions>, historyStore: ReturnType<typeof createHistoryStore>): {
9
9
  handleAnalyze: (req: IncomingMessage, res: ServerResponse) => Promise<void>;
@@ -0,0 +1,10 @@
1
+ export interface NativeProbeOptions {
2
+ name: string;
3
+ sourcePath: string;
4
+ packagedPath: string;
5
+ cacheDir: string;
6
+ frameworks: string[];
7
+ compile?: (source: string, output: string, frameworks: string[]) => Promise<boolean>;
8
+ }
9
+ /** A source-only npm package can recover its native helper without modifying the package. */
10
+ export declare function resolveNativeProbe(options: NativeProbeOptions): Promise<string>;
@@ -0,0 +1,24 @@
1
+ import type { HistoryAttachment } from './history-attachments.js';
2
+ export interface PromoteTurn {
3
+ role: 'user' | 'assistant';
4
+ text: string;
5
+ attachments: HistoryAttachment[];
6
+ }
7
+ /** The durable event envelope accepted by the host's seeded agent factory. */
8
+ export interface PromoteSeedEvent {
9
+ type: string;
10
+ seq: number;
11
+ time: number;
12
+ data: unknown;
13
+ surfaceOp?: 'append';
14
+ }
15
+ /** Build balanced, contiguous history before the host constructs its agent. */
16
+ export declare function buildPromoteSeed({ text, label, contextText, translation, detail, sourceSessionId, turns }: {
17
+ text: string;
18
+ label: string;
19
+ contextText: string;
20
+ translation: string;
21
+ detail: string;
22
+ sourceSessionId: string;
23
+ turns: PromoteTurn[];
24
+ }): PromoteSeedEvent[];
@@ -0,0 +1,11 @@
1
+ import type { ShotPlatform, ShotOptions, ShotPending, ShotRect } from './shot-types.js';
2
+ export declare class ShotCaptureError extends Error {
3
+ readonly code: string;
4
+ readonly startup: boolean;
5
+ constructor(code: string, message: string, startup?: boolean);
6
+ }
7
+ export interface CaptureResult {
8
+ shot: ShotPending;
9
+ note: string;
10
+ }
11
+ export declare function captureShot(platform: ShotPlatform, options: ShotOptions, dir: string, signal: AbortSignal, knownRect?: ShotRect): Promise<CaptureResult | null>;
@@ -0,0 +1,37 @@
1
+ /** Pure selection geometry and metadata parsing; no process, file or service state. */
2
+ import type { ShotRect, DisplayInfo, WinInfo, ShotMode, ShotOptions, ShotConfig, ImageSize, CropBox } from './shot-types.js';
3
+ export declare function intersectArea(a: ShotRect, b: {
4
+ x: number;
5
+ y: number;
6
+ w: number;
7
+ h: number;
8
+ }): number;
9
+ /**
10
+ * 选区中心落在哪块屏。
11
+ *
12
+ * 用中心而不是"交集最大":选区跨屏时,按中心裁到一块屏才能保证**统一缩放**
13
+ * (混合 DPI 下 `screencapture -R` 跨屏的像素比例不是线性的)。
14
+ */
15
+ export declare function pickDisplay(displays: DisplayInfo[], rect: ShotRect): DisplayInfo | null;
16
+ export declare function clampRect(rect: ShotRect, box: {
17
+ x: number;
18
+ y: number;
19
+ w: number;
20
+ h: number;
21
+ }): ShotRect;
22
+ /** Binary plist arrays refer to objects: duplicate coordinate values share the same object. */
23
+ export declare function parseRectPlist(buf: Buffer): number[] | null;
24
+ export declare function contains(win: WinInfo, rect: ShotRect): boolean;
25
+ export declare function area(win: WinInfo): number;
26
+ /**
27
+ * 选"你框的那块属于哪个窗口"。
28
+ *
29
+ * 规则:layer 0(普通应用窗口)里,**包含选区中心**的那些,取面积最小的 ——
30
+ * 这样点在一个大窗口里的小对话框上,裁的是对话框而不是整个背景窗口。
31
+ */
32
+ export declare function pickWindow(wins: WinInfo[], rect: ShotRect): WinInfo | null;
33
+ export declare function friendlyCaptureError(stderr: string, code: number | null): string;
34
+ export declare function resolveOptions(config: ShotConfig, mode: ShotMode, url: URL): Omit<ShotOptions, 'seq'>;
35
+ export declare function parseRectXattr(hex: string): ShotRect | null;
36
+ export declare function parsePngSize(buf: Buffer): ImageSize | null;
37
+ export declare function cropBox(box: CropBox, size: ImageSize): CropBox;
@@ -0,0 +1,11 @@
1
+ import type { ChildProcess } from 'node:child_process';
2
+ import type { CommandRunner, ShotPlatform } from './shot-types.js';
3
+ export type SpawnCommand = (command: string, args: string[], options: {
4
+ stdio: ['ignore', 'pipe', 'pipe'];
5
+ env?: NodeJS.ProcessEnv;
6
+ }) => ChildProcess;
7
+ /** Every external command, including helper compilation, observes the service's abort signal. */
8
+ export declare function createCommandRunner(launch?: SpawnCommand): CommandRunner;
9
+ export declare function shotSupported(): boolean;
10
+ export declare function resolveWindowProbe(): string;
11
+ export declare function createMacShotPlatform(execute?: CommandRunner): ShotPlatform;
@@ -0,0 +1,17 @@
1
+ import type { ShotError, ShotOptions, ShotPending, ShotPlatform, ShotRect, ShotStatus } from './shot-types.js';
2
+ export declare function createShotTasks(platform: ShotPlatform): {
3
+ start: (options: Omit<ShotOptions, "seq">, rect?: ShotRect) => Promise<boolean>;
4
+ stop: () => Promise<void>;
5
+ status: () => ShotStatus;
6
+ ensureAvailable: () => boolean;
7
+ signal: AbortSignal;
8
+ clearError(): void;
9
+ hasPending(): boolean;
10
+ takePending(): {
11
+ shot: ShotPending | null;
12
+ error: ShotError | null;
13
+ };
14
+ findShot(id: string): ShotPending | null;
15
+ lastShot(): ShotPending | null;
16
+ subscribe(callback: () => void): () => void;
17
+ };
@@ -0,0 +1,105 @@
1
+ import type { Config } from './config.js';
2
+ export type ShotScope = 'screen' | 'window' | 'margin' | 'selection';
3
+ export type ShotMode = 'card' | 'panel';
4
+ export interface ShotRect {
5
+ x: number;
6
+ y: number;
7
+ width: number;
8
+ height: number;
9
+ }
10
+ export interface ShotPending {
11
+ id: string;
12
+ at: number;
13
+ scope: ShotScope;
14
+ mode: ShotMode;
15
+ frame: boolean;
16
+ imagePath: string;
17
+ /** Selection relative to the final image, in pixels. */
18
+ rect: ShotRect;
19
+ windowRect: ShotRect;
20
+ selectionRect: ShotRect;
21
+ scale: number;
22
+ pad: {
23
+ x: number;
24
+ y: number;
25
+ };
26
+ owner: string;
27
+ ready: boolean;
28
+ }
29
+ export interface ShotError {
30
+ code: string;
31
+ message: string;
32
+ at: number;
33
+ }
34
+ export interface ShotStatus {
35
+ available: boolean;
36
+ reason: string;
37
+ capturing: boolean;
38
+ total: number;
39
+ lastError: string;
40
+ }
41
+ export type ShotConfig = Pick<Config, 'shotCardScope' | 'shotPanelScope' | 'shotMargin'>;
42
+ export interface ShotOptions {
43
+ seq: number;
44
+ mode: ShotMode;
45
+ scope: ShotScope;
46
+ margin: number;
47
+ }
48
+ export interface WinInfo {
49
+ id: number;
50
+ x: number;
51
+ y: number;
52
+ w: number;
53
+ h: number;
54
+ layer: number;
55
+ owner: string;
56
+ }
57
+ export interface DisplayInfo {
58
+ id: number;
59
+ x: number;
60
+ y: number;
61
+ w: number;
62
+ h: number;
63
+ index: number;
64
+ main: boolean;
65
+ }
66
+ export interface ImageSize {
67
+ w: number;
68
+ h: number;
69
+ }
70
+ export interface CropBox {
71
+ left: number;
72
+ top: number;
73
+ width: number;
74
+ height: number;
75
+ }
76
+ export interface CommandResult {
77
+ stdout: string;
78
+ stderr: string;
79
+ code: number | null;
80
+ signal: NodeJS.Signals | null;
81
+ timedOut: boolean;
82
+ failed: boolean;
83
+ }
84
+ export type CommandRunner = (command: string, args: string[], signal: AbortSignal, timeout?: number, env?: NodeJS.ProcessEnv) => Promise<CommandResult>;
85
+ /** Only this port touches the machine; tests supply inert files and capture commands. */
86
+ export interface ShotPlatform {
87
+ supported(): boolean;
88
+ probeAvailable(signal: AbortSignal): Promise<boolean>;
89
+ listWindows(signal: AbortSignal): Promise<WinInfo[]>;
90
+ listDisplays(signal: AbortSignal): Promise<DisplayInfo[]>;
91
+ createTempDir(): Promise<string>;
92
+ remove(path: string, recursive?: boolean): Promise<void>;
93
+ prune(dir: string, seq: number): Promise<void>;
94
+ readFile(path: string): Promise<Buffer>;
95
+ fileExists(path: string): Promise<boolean>;
96
+ pngSize(path: string): Promise<ImageSize | null>;
97
+ rectFromXattr(path: string, signal: AbortSignal): Promise<ShotRect | null>;
98
+ /** Await already-aborted machine commands before deleting their output directory. */
99
+ settle?(): Promise<void>;
100
+ run: CommandRunner;
101
+ }
102
+ export declare const CAPTURE = "/usr/sbin/screencapture";
103
+ export declare const SELECT_TIMEOUT_MS = 90000;
104
+ export declare const MAX_MARGIN_PT = 400;
105
+ export declare const DEFAULT_SHOT_CONFIG: ShotConfig;