@mmnto/cli 1.50.0 → 1.52.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 (34) hide show
  1. package/dist/commands/eject.d.ts.map +1 -1
  2. package/dist/commands/eject.js +12 -4
  3. package/dist/commands/eject.js.map +1 -1
  4. package/dist/commands/gate-install.d.ts +59 -0
  5. package/dist/commands/gate-install.d.ts.map +1 -0
  6. package/dist/commands/gate-install.js +111 -0
  7. package/dist/commands/gate-install.js.map +1 -0
  8. package/dist/commands/gate-install.test.d.ts +2 -0
  9. package/dist/commands/gate-install.test.d.ts.map +1 -0
  10. package/dist/commands/gate-install.test.js +472 -0
  11. package/dist/commands/gate-install.test.js.map +1 -0
  12. package/dist/commands/gate.d.ts +47 -0
  13. package/dist/commands/gate.d.ts.map +1 -0
  14. package/dist/commands/gate.js +102 -0
  15. package/dist/commands/gate.js.map +1 -0
  16. package/dist/commands/gate.test.d.ts +2 -0
  17. package/dist/commands/gate.test.d.ts.map +1 -0
  18. package/dist/commands/gate.test.js +104 -0
  19. package/dist/commands/gate.test.js.map +1 -0
  20. package/dist/commands/host-hooks.d.ts +745 -0
  21. package/dist/commands/host-hooks.d.ts.map +1 -0
  22. package/dist/commands/host-hooks.js +229 -0
  23. package/dist/commands/host-hooks.js.map +1 -0
  24. package/dist/commands/init-templates.d.ts +8 -0
  25. package/dist/commands/init-templates.d.ts.map +1 -1
  26. package/dist/commands/init-templates.js +240 -0
  27. package/dist/commands/init-templates.js.map +1 -1
  28. package/dist/commands/init.d.ts +6 -4
  29. package/dist/commands/init.d.ts.map +1 -1
  30. package/dist/commands/init.js +81 -94
  31. package/dist/commands/init.js.map +1 -1
  32. package/dist/index.js +39 -0
  33. package/dist/index.js.map +1 -1
  34. package/package.json +2 -2
@@ -0,0 +1,745 @@
1
+ import { z } from 'zod';
2
+ export declare const HookCommandSchema: z.ZodUnion<[z.ZodString, z.ZodObject<{
3
+ type: z.ZodString;
4
+ command: z.ZodString;
5
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
6
+ type: z.ZodString;
7
+ command: z.ZodString;
8
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
9
+ type: z.ZodString;
10
+ command: z.ZodString;
11
+ }, z.ZodTypeAny, "passthrough">>]>;
12
+ export declare const ClaudeSettingsSchema: z.ZodObject<{
13
+ hooks: z.ZodOptional<z.ZodObject<{
14
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
15
+ matcher: z.ZodOptional<z.ZodString>;
16
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
17
+ type: z.ZodString;
18
+ command: z.ZodString;
19
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
20
+ type: z.ZodString;
21
+ command: z.ZodString;
22
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
23
+ type: z.ZodString;
24
+ command: z.ZodString;
25
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
26
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
27
+ matcher: z.ZodOptional<z.ZodString>;
28
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
29
+ type: z.ZodString;
30
+ command: z.ZodString;
31
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
32
+ type: z.ZodString;
33
+ command: z.ZodString;
34
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
35
+ type: z.ZodString;
36
+ command: z.ZodString;
37
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
38
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
39
+ matcher: z.ZodOptional<z.ZodString>;
40
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
41
+ type: z.ZodString;
42
+ command: z.ZodString;
43
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
44
+ type: z.ZodString;
45
+ command: z.ZodString;
46
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
47
+ type: z.ZodString;
48
+ command: z.ZodString;
49
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
50
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
51
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
52
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
53
+ type: z.ZodString;
54
+ command: z.ZodString;
55
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
56
+ type: z.ZodString;
57
+ command: z.ZodString;
58
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
59
+ type: z.ZodString;
60
+ command: z.ZodString;
61
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
62
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
63
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
64
+ type: z.ZodString;
65
+ command: z.ZodString;
66
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
67
+ type: z.ZodString;
68
+ command: z.ZodString;
69
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
70
+ type: z.ZodString;
71
+ command: z.ZodString;
72
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
73
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
74
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
75
+ type: z.ZodString;
76
+ command: z.ZodString;
77
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
78
+ type: z.ZodString;
79
+ command: z.ZodString;
80
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
81
+ type: z.ZodString;
82
+ command: z.ZodString;
83
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
84
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
85
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
86
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
87
+ matcher: z.ZodOptional<z.ZodString>;
88
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
89
+ type: z.ZodString;
90
+ command: z.ZodString;
91
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
92
+ type: z.ZodString;
93
+ command: z.ZodString;
94
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
95
+ type: z.ZodString;
96
+ command: z.ZodString;
97
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
98
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
99
+ matcher: z.ZodOptional<z.ZodString>;
100
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
101
+ type: z.ZodString;
102
+ command: z.ZodString;
103
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
104
+ type: z.ZodString;
105
+ command: z.ZodString;
106
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
107
+ type: z.ZodString;
108
+ command: z.ZodString;
109
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
110
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
111
+ matcher: z.ZodOptional<z.ZodString>;
112
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
113
+ type: z.ZodString;
114
+ command: z.ZodString;
115
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
116
+ type: z.ZodString;
117
+ command: z.ZodString;
118
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
119
+ type: z.ZodString;
120
+ command: z.ZodString;
121
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
122
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
123
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
124
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
125
+ type: z.ZodString;
126
+ command: z.ZodString;
127
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
128
+ type: z.ZodString;
129
+ command: z.ZodString;
130
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
131
+ type: z.ZodString;
132
+ command: z.ZodString;
133
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
134
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
135
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
136
+ type: z.ZodString;
137
+ command: z.ZodString;
138
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
139
+ type: z.ZodString;
140
+ command: z.ZodString;
141
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
142
+ type: z.ZodString;
143
+ command: z.ZodString;
144
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
145
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
146
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
147
+ type: z.ZodString;
148
+ command: z.ZodString;
149
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
150
+ type: z.ZodString;
151
+ command: z.ZodString;
152
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
153
+ type: z.ZodString;
154
+ command: z.ZodString;
155
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
156
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
157
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
158
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
159
+ matcher: z.ZodOptional<z.ZodString>;
160
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
161
+ type: z.ZodString;
162
+ command: z.ZodString;
163
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
164
+ type: z.ZodString;
165
+ command: z.ZodString;
166
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
167
+ type: z.ZodString;
168
+ command: z.ZodString;
169
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
170
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
171
+ matcher: z.ZodOptional<z.ZodString>;
172
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
173
+ type: z.ZodString;
174
+ command: z.ZodString;
175
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
176
+ type: z.ZodString;
177
+ command: z.ZodString;
178
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
179
+ type: z.ZodString;
180
+ command: z.ZodString;
181
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
182
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
183
+ matcher: z.ZodOptional<z.ZodString>;
184
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
185
+ type: z.ZodString;
186
+ command: z.ZodString;
187
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
188
+ type: z.ZodString;
189
+ command: z.ZodString;
190
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
191
+ type: z.ZodString;
192
+ command: z.ZodString;
193
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
194
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
195
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
196
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
197
+ type: z.ZodString;
198
+ command: z.ZodString;
199
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
200
+ type: z.ZodString;
201
+ command: z.ZodString;
202
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
203
+ type: z.ZodString;
204
+ command: z.ZodString;
205
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
206
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
207
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
208
+ type: z.ZodString;
209
+ command: z.ZodString;
210
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
211
+ type: z.ZodString;
212
+ command: z.ZodString;
213
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
214
+ type: z.ZodString;
215
+ command: z.ZodString;
216
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
217
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
218
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
219
+ type: z.ZodString;
220
+ command: z.ZodString;
221
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
222
+ type: z.ZodString;
223
+ command: z.ZodString;
224
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
225
+ type: z.ZodString;
226
+ command: z.ZodString;
227
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
228
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
229
+ }, z.ZodTypeAny, "passthrough">>>;
230
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
231
+ hooks: z.ZodOptional<z.ZodObject<{
232
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
233
+ matcher: z.ZodOptional<z.ZodString>;
234
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
235
+ type: z.ZodString;
236
+ command: z.ZodString;
237
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
238
+ type: z.ZodString;
239
+ command: z.ZodString;
240
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
241
+ type: z.ZodString;
242
+ command: z.ZodString;
243
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
244
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
245
+ matcher: z.ZodOptional<z.ZodString>;
246
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
247
+ type: z.ZodString;
248
+ command: z.ZodString;
249
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
250
+ type: z.ZodString;
251
+ command: z.ZodString;
252
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
253
+ type: z.ZodString;
254
+ command: z.ZodString;
255
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
256
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
257
+ matcher: z.ZodOptional<z.ZodString>;
258
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
259
+ type: z.ZodString;
260
+ command: z.ZodString;
261
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
262
+ type: z.ZodString;
263
+ command: z.ZodString;
264
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
265
+ type: z.ZodString;
266
+ command: z.ZodString;
267
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
268
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
269
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
270
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
271
+ type: z.ZodString;
272
+ command: z.ZodString;
273
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
274
+ type: z.ZodString;
275
+ command: z.ZodString;
276
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
277
+ type: z.ZodString;
278
+ command: z.ZodString;
279
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
280
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
281
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
282
+ type: z.ZodString;
283
+ command: z.ZodString;
284
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
285
+ type: z.ZodString;
286
+ command: z.ZodString;
287
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
288
+ type: z.ZodString;
289
+ command: z.ZodString;
290
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
291
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
292
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
293
+ type: z.ZodString;
294
+ command: z.ZodString;
295
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
296
+ type: z.ZodString;
297
+ command: z.ZodString;
298
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
299
+ type: z.ZodString;
300
+ command: z.ZodString;
301
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
302
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
303
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
304
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
305
+ matcher: z.ZodOptional<z.ZodString>;
306
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
307
+ type: z.ZodString;
308
+ command: z.ZodString;
309
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
310
+ type: z.ZodString;
311
+ command: z.ZodString;
312
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
313
+ type: z.ZodString;
314
+ command: z.ZodString;
315
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
316
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
317
+ matcher: z.ZodOptional<z.ZodString>;
318
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
319
+ type: z.ZodString;
320
+ command: z.ZodString;
321
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
322
+ type: z.ZodString;
323
+ command: z.ZodString;
324
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
325
+ type: z.ZodString;
326
+ command: z.ZodString;
327
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
328
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
329
+ matcher: z.ZodOptional<z.ZodString>;
330
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
331
+ type: z.ZodString;
332
+ command: z.ZodString;
333
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
334
+ type: z.ZodString;
335
+ command: z.ZodString;
336
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
337
+ type: z.ZodString;
338
+ command: z.ZodString;
339
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
340
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
341
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
342
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
343
+ type: z.ZodString;
344
+ command: z.ZodString;
345
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
346
+ type: z.ZodString;
347
+ command: z.ZodString;
348
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
349
+ type: z.ZodString;
350
+ command: z.ZodString;
351
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
352
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
353
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
354
+ type: z.ZodString;
355
+ command: z.ZodString;
356
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
357
+ type: z.ZodString;
358
+ command: z.ZodString;
359
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
360
+ type: z.ZodString;
361
+ command: z.ZodString;
362
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
363
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
364
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
365
+ type: z.ZodString;
366
+ command: z.ZodString;
367
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
368
+ type: z.ZodString;
369
+ command: z.ZodString;
370
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
371
+ type: z.ZodString;
372
+ command: z.ZodString;
373
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
374
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
375
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
376
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
377
+ matcher: z.ZodOptional<z.ZodString>;
378
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
379
+ type: z.ZodString;
380
+ command: z.ZodString;
381
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
382
+ type: z.ZodString;
383
+ command: z.ZodString;
384
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
385
+ type: z.ZodString;
386
+ command: z.ZodString;
387
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
388
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
389
+ matcher: z.ZodOptional<z.ZodString>;
390
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
391
+ type: z.ZodString;
392
+ command: z.ZodString;
393
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
394
+ type: z.ZodString;
395
+ command: z.ZodString;
396
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
397
+ type: z.ZodString;
398
+ command: z.ZodString;
399
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
400
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
401
+ matcher: z.ZodOptional<z.ZodString>;
402
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
403
+ type: z.ZodString;
404
+ command: z.ZodString;
405
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
406
+ type: z.ZodString;
407
+ command: z.ZodString;
408
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
409
+ type: z.ZodString;
410
+ command: z.ZodString;
411
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
412
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
413
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
414
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
415
+ type: z.ZodString;
416
+ command: z.ZodString;
417
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
418
+ type: z.ZodString;
419
+ command: z.ZodString;
420
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
421
+ type: z.ZodString;
422
+ command: z.ZodString;
423
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
424
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
425
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
426
+ type: z.ZodString;
427
+ command: z.ZodString;
428
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
429
+ type: z.ZodString;
430
+ command: z.ZodString;
431
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
432
+ type: z.ZodString;
433
+ command: z.ZodString;
434
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
435
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
436
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
437
+ type: z.ZodString;
438
+ command: z.ZodString;
439
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
440
+ type: z.ZodString;
441
+ command: z.ZodString;
442
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
443
+ type: z.ZodString;
444
+ command: z.ZodString;
445
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
446
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
447
+ }, z.ZodTypeAny, "passthrough">>>;
448
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
449
+ hooks: z.ZodOptional<z.ZodObject<{
450
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
451
+ matcher: z.ZodOptional<z.ZodString>;
452
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
453
+ type: z.ZodString;
454
+ command: z.ZodString;
455
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
456
+ type: z.ZodString;
457
+ command: z.ZodString;
458
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
459
+ type: z.ZodString;
460
+ command: z.ZodString;
461
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
462
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
463
+ matcher: z.ZodOptional<z.ZodString>;
464
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
465
+ type: z.ZodString;
466
+ command: z.ZodString;
467
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
468
+ type: z.ZodString;
469
+ command: z.ZodString;
470
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
471
+ type: z.ZodString;
472
+ command: z.ZodString;
473
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
474
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
475
+ matcher: z.ZodOptional<z.ZodString>;
476
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
477
+ type: z.ZodString;
478
+ command: z.ZodString;
479
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
480
+ type: z.ZodString;
481
+ command: z.ZodString;
482
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
483
+ type: z.ZodString;
484
+ command: z.ZodString;
485
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
486
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
487
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
488
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
489
+ type: z.ZodString;
490
+ command: z.ZodString;
491
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
492
+ type: z.ZodString;
493
+ command: z.ZodString;
494
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
495
+ type: z.ZodString;
496
+ command: z.ZodString;
497
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
498
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
499
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
500
+ type: z.ZodString;
501
+ command: z.ZodString;
502
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
503
+ type: z.ZodString;
504
+ command: z.ZodString;
505
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
506
+ type: z.ZodString;
507
+ command: z.ZodString;
508
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
509
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
510
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
511
+ type: z.ZodString;
512
+ command: z.ZodString;
513
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
514
+ type: z.ZodString;
515
+ command: z.ZodString;
516
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
517
+ type: z.ZodString;
518
+ command: z.ZodString;
519
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
520
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
521
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
522
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
523
+ matcher: z.ZodOptional<z.ZodString>;
524
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
525
+ type: z.ZodString;
526
+ command: z.ZodString;
527
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
528
+ type: z.ZodString;
529
+ command: z.ZodString;
530
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
531
+ type: z.ZodString;
532
+ command: z.ZodString;
533
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
534
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
535
+ matcher: z.ZodOptional<z.ZodString>;
536
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
537
+ type: z.ZodString;
538
+ command: z.ZodString;
539
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
540
+ type: z.ZodString;
541
+ command: z.ZodString;
542
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
543
+ type: z.ZodString;
544
+ command: z.ZodString;
545
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
546
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
547
+ matcher: z.ZodOptional<z.ZodString>;
548
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
549
+ type: z.ZodString;
550
+ command: z.ZodString;
551
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
552
+ type: z.ZodString;
553
+ command: z.ZodString;
554
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
555
+ type: z.ZodString;
556
+ command: z.ZodString;
557
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
558
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
559
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
560
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
561
+ type: z.ZodString;
562
+ command: z.ZodString;
563
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
564
+ type: z.ZodString;
565
+ command: z.ZodString;
566
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
567
+ type: z.ZodString;
568
+ command: z.ZodString;
569
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
570
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
571
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
572
+ type: z.ZodString;
573
+ command: z.ZodString;
574
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
575
+ type: z.ZodString;
576
+ command: z.ZodString;
577
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
578
+ type: z.ZodString;
579
+ command: z.ZodString;
580
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
581
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
582
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
583
+ type: z.ZodString;
584
+ command: z.ZodString;
585
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
586
+ type: z.ZodString;
587
+ command: z.ZodString;
588
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
589
+ type: z.ZodString;
590
+ command: z.ZodString;
591
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
592
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
593
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
594
+ PreToolUse: z.ZodOptional<z.ZodArray<z.ZodObject<{
595
+ matcher: z.ZodOptional<z.ZodString>;
596
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
597
+ type: z.ZodString;
598
+ command: z.ZodString;
599
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
600
+ type: z.ZodString;
601
+ command: z.ZodString;
602
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
603
+ type: z.ZodString;
604
+ command: z.ZodString;
605
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
606
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
607
+ matcher: z.ZodOptional<z.ZodString>;
608
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
609
+ type: z.ZodString;
610
+ command: z.ZodString;
611
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
612
+ type: z.ZodString;
613
+ command: z.ZodString;
614
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
615
+ type: z.ZodString;
616
+ command: z.ZodString;
617
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
618
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
619
+ matcher: z.ZodOptional<z.ZodString>;
620
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
621
+ type: z.ZodString;
622
+ command: z.ZodString;
623
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
624
+ type: z.ZodString;
625
+ command: z.ZodString;
626
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
627
+ type: z.ZodString;
628
+ command: z.ZodString;
629
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
630
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
631
+ SessionStart: z.ZodOptional<z.ZodArray<z.ZodObject<{
632
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
633
+ type: z.ZodString;
634
+ command: z.ZodString;
635
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
636
+ type: z.ZodString;
637
+ command: z.ZodString;
638
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
639
+ type: z.ZodString;
640
+ command: z.ZodString;
641
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
642
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
643
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
644
+ type: z.ZodString;
645
+ command: z.ZodString;
646
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
647
+ type: z.ZodString;
648
+ command: z.ZodString;
649
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
650
+ type: z.ZodString;
651
+ command: z.ZodString;
652
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
653
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
654
+ hooks: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
655
+ type: z.ZodString;
656
+ command: z.ZodString;
657
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
658
+ type: z.ZodString;
659
+ command: z.ZodString;
660
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
661
+ type: z.ZodString;
662
+ command: z.ZodString;
663
+ }, z.ZodTypeAny, "passthrough">>]>, "many">>;
664
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
665
+ }, z.ZodTypeAny, "passthrough">>>;
666
+ }, z.ZodTypeAny, "passthrough">>;
667
+ export type ParsedSettings = z.infer<typeof ClaudeSettingsSchema>;
668
+ /** PreToolUse matcher values Totem installs under. */
669
+ export type PreToolUseMatcher = 'Bash' | 'Write|Edit';
670
+ /** Outcome of a settings-merge attempt. */
671
+ export type ScaffoldOutcome = {
672
+ action: 'created' | 'merged' | 'skipped';
673
+ err?: string;
674
+ };
675
+ /** The `hooks.<key>` lifecycle a merge targets. */
676
+ export type ClaudeHooksKey = 'PreToolUse' | 'SessionStart';
677
+ /**
678
+ * Structural shape of a single hook entry. Widened from the closed
679
+ * 3-template `ClaudeHookEntry` union that lived in init.ts so a
680
+ * gate-wrapper entry (`{ matcher: 'Write|Edit', hooks: [{ type, command }] }`)
681
+ * is a valid argument without enumerating every concrete template. Any entry
682
+ * carrying a `hooks` array of `{ type, command }` objects (optionally a
683
+ * `matcher` / `timeout`) is accepted; passthrough fields (e.g. `timeout`) are
684
+ * preserved by the merge because the entry is written verbatim.
685
+ */
686
+ export interface HostHookEntry {
687
+ matcher?: string;
688
+ hooks: Array<{
689
+ type: string;
690
+ command: string;
691
+ [k: string]: unknown;
692
+ }>;
693
+ [k: string]: unknown;
694
+ }
695
+ /**
696
+ * Shared merge logic for installing a single hook entry into a Claude
697
+ * settings JSON file (`settings.local.json` or `settings.json`) under
698
+ * `hooks.<key>`. Both `PreToolUse` and `SessionStart` lifecycles share
699
+ * the same read → safeparse → idempotency probe → append → write shape;
700
+ * this is the single source of truth.
701
+ *
702
+ * Idempotent: returns `'skipped'` if `alreadyInstalled(parsed)` is true.
703
+ */
704
+ export declare function mergeClaudeHooksKey(filePath: string, hookKind: ClaudeHooksKey, entry: HostHookEntry, alreadyInstalled: (parsed: ParsedSettings) => boolean): ScaffoldOutcome;
705
+ /** Outcome of a tier-aware `PreToolUse` command upsert. */
706
+ export type HookUpsertOutcome = {
707
+ /**
708
+ * `created` — fresh settings file written; `merged` — a new entry appended;
709
+ * `updated` — an existing matching entry's command rewritten in place (e.g.
710
+ * a tier switch); `skipped` — the desired command was already present (true
711
+ * no-op) or the file had an unexpected shape (with `err`).
712
+ */
713
+ action: 'created' | 'merged' | 'updated' | 'skipped';
714
+ err?: string;
715
+ };
716
+ /**
717
+ * Tier-AWARE upsert of a single `PreToolUse` command into a Claude settings
718
+ * JSON file under `hooks.PreToolUse`. Unlike `mergeClaudeHooksKey` (which only
719
+ * ever appends or no-ops), this guarantees AT MOST ONE entry can match
720
+ * `(matcher, identifies)` and rewrites that entry's command in place when it
721
+ * differs from `desiredEntry`'s command — so re-installing the same gate at a
722
+ * different tier flips the baked command rather than silently no-opping or
723
+ * duplicating the entry.
724
+ *
725
+ * `identifies(command)` decides whether an existing hook command is "the same
726
+ * gate" (tier-INDEPENDENT). `desiredEntry` carries the canonical
727
+ * matcher + the single hook whose `command` is the tier-correct target.
728
+ *
729
+ * Cases:
730
+ * 1. no existing match → append `desiredEntry` → `merged` (or
731
+ * `created` if the file did not exist)
732
+ * 2. match, same command → no write → `skipped`
733
+ * 3. match, different command → rewrite that hook's command → `updated`
734
+ *
735
+ * Result-returning (never throws past its own boundary), mirroring
736
+ * `mergeClaudeHooksKey`'s contract so callers branch on `{ action, err }`.
737
+ */
738
+ export declare function upsertClaudeHookCommand(filePath: string, matcher: PreToolUseMatcher, desiredEntry: HostHookEntry, identifies: (command: string) => boolean): HookUpsertOutcome;
739
+ /**
740
+ * True iff `parsed.hooks.PreToolUse` contains an entry under `matcher`
741
+ * whose hook list satisfies `probe`. The idempotency primitive both the
742
+ * shield-gate and gate-install installers key on.
743
+ */
744
+ export declare function preToolUseHasMatcher(parsed: ParsedSettings, matcher: PreToolUseMatcher, probe: (entry: z.infer<typeof HookCommandSchema>) => boolean): boolean;
745
+ //# sourceMappingURL=host-hooks.d.ts.map