@stacksjs/types 0.70.23 → 0.70.25

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 (161) hide show
  1. package/dist/index.js +1 -1
  2. package/dist/src/ai.d.ts +37 -0
  3. package/dist/src/analytics.d.ts +36 -0
  4. package/dist/src/api.d.ts +26 -0
  5. package/dist/src/app.d.ts +28 -0
  6. package/dist/src/attributes.d.ts +1 -0
  7. package/dist/src/auth.d.ts +49 -0
  8. package/dist/src/auto-imports.d.ts +8 -0
  9. package/dist/{binary.d.ts → src/binary.d.ts} +4 -1
  10. package/dist/src/cache.d.ts +79 -0
  11. package/dist/{cdn.d.ts → src/cdn.d.ts} +1 -1
  12. package/dist/{chat.d.ts → src/chat.d.ts} +29 -48
  13. package/dist/src/cli.d.ts +308 -0
  14. package/dist/{cloud.d.ts → src/cloud.d.ts} +81 -26
  15. package/dist/{components.d.ts → src/components.d.ts} +1 -4
  16. package/dist/{configure.d.ts → src/configure.d.ts} +1 -1
  17. package/dist/{cron-jobs.d.ts → src/cron-jobs.d.ts} +33 -37
  18. package/dist/src/dashboard.d.ts +33 -0
  19. package/dist/{database.d.ts → src/database.d.ts} +20 -12
  20. package/dist/src/dependencies.d.ts +17 -0
  21. package/dist/src/deploy.d.ts +16 -0
  22. package/dist/{dns.d.ts → src/dns.d.ts} +59 -59
  23. package/dist/src/docs.d.ts +23 -0
  24. package/dist/src/email.d.ts +201 -0
  25. package/dist/src/env.d.ts +1 -0
  26. package/dist/{errors.d.ts → src/errors.d.ts} +17 -24
  27. package/dist/src/events.d.ts +31 -0
  28. package/dist/src/exit-code.d.ts +10 -0
  29. package/dist/{file-systems.d.ts → src/file-systems.d.ts} +10 -6
  30. package/dist/{git.d.ts → src/git.d.ts} +9 -6
  31. package/dist/src/hashing.d.ts +57 -0
  32. package/dist/src/helpers.d.ts +1 -0
  33. package/dist/src/i18n.d.ts +65 -0
  34. package/dist/src/index.d.ts +70 -0
  35. package/dist/{library.d.ts → src/library.d.ts} +31 -33
  36. package/dist/src/logging.d.ts +12 -0
  37. package/dist/{manifest.d.ts → src/manifest.d.ts} +4 -1
  38. package/dist/src/model-names.d.ts +1 -0
  39. package/dist/src/model.d.ts +251 -0
  40. package/dist/{notifications.d.ts → src/notifications.d.ts} +1 -26
  41. package/dist/src/oauth.d.ts +290 -0
  42. package/dist/{pages.d.ts → src/pages.d.ts} +1 -1
  43. package/dist/src/payments.d.ts +322 -0
  44. package/dist/src/phone.d.ts +52 -0
  45. package/dist/src/ports.d.ts +20 -0
  46. package/dist/src/promise.d.ts +1 -0
  47. package/dist/src/push.d.ts +108 -0
  48. package/dist/src/queue.d.ts +310 -0
  49. package/dist/src/reactivity.d.ts +1 -0
  50. package/dist/src/realtime.d.ts +443 -0
  51. package/dist/src/request.d.ts +154 -0
  52. package/dist/{response.d.ts → src/response.d.ts} +1 -1
  53. package/dist/src/router.d.ts +105 -0
  54. package/dist/{saas.d.ts → src/saas.d.ts} +2 -2
  55. package/dist/src/scheduler.d.ts +1 -0
  56. package/dist/{search-engine.d.ts → src/search-engine.d.ts} +41 -45
  57. package/dist/{security.d.ts → src/security.d.ts} +4 -8
  58. package/dist/{server.d.ts → src/server.d.ts} +1 -1
  59. package/dist/src/services.d.ts +140 -0
  60. package/dist/{settings-config.d.ts → src/settings-config.d.ts} +1 -1
  61. package/dist/src/sms.d.ts +144 -0
  62. package/dist/src/stack-extensions.d.ts +137 -0
  63. package/dist/src/stacks.d.ts +40 -0
  64. package/dist/src/storage.d.ts +105 -0
  65. package/dist/src/table-names.d.ts +1 -0
  66. package/dist/src/tables.d.ts +34 -0
  67. package/dist/src/team.d.ts +7 -0
  68. package/dist/src/ui.d.ts +55 -0
  69. package/dist/src/utils.d.ts +39 -0
  70. package/package.json +13 -32
  71. package/src/ai.ts +20 -6
  72. package/src/analytics.ts +38 -1
  73. package/src/app.ts +38 -0
  74. package/src/attributes.ts +5 -1
  75. package/src/auth.ts +122 -0
  76. package/src/auto-imports.ts +8 -1
  77. package/src/cache.ts +226 -69
  78. package/src/chat.ts +0 -20
  79. package/src/cli.ts +24 -9
  80. package/src/cloud.ts +40 -1
  81. package/src/components.ts +3 -5
  82. package/src/cron-jobs.ts +1 -1
  83. package/src/dashboard.ts +40 -0
  84. package/src/database.ts +18 -2
  85. package/src/dns.ts +1 -1
  86. package/src/docs.ts +3 -3
  87. package/src/email.ts +303 -13
  88. package/src/errors.ts +2 -3
  89. package/src/events.ts +10 -5
  90. package/src/git.ts +3 -3
  91. package/src/hashing.ts +15 -19
  92. package/src/i18n.ts +105 -3
  93. package/src/index.ts +9 -5
  94. package/src/library.ts +0 -5
  95. package/src/model-names.ts +1 -1
  96. package/src/model.ts +87 -10
  97. package/src/oauth.ts +488 -0
  98. package/src/payments.ts +370 -27
  99. package/src/phone.ts +62 -0
  100. package/src/push.ts +107 -0
  101. package/src/queue.ts +386 -28
  102. package/src/reactivity.ts +1 -1
  103. package/src/realtime.ts +584 -0
  104. package/src/request.ts +344 -22
  105. package/src/router.ts +62 -4
  106. package/src/search-engine.ts +13 -13
  107. package/src/services.ts +100 -5
  108. package/src/sms.ts +263 -3
  109. package/src/stack-extensions.ts +184 -0
  110. package/src/stacks.ts +34 -4
  111. package/src/storage.ts +140 -6
  112. package/src/table-names.ts +1 -1
  113. package/src/ui.ts +20 -12
  114. package/src/utils.ts +1 -1
  115. package/dist/ai.d.ts +0 -20
  116. package/dist/analytics.d.ts +0 -13
  117. package/dist/api.d.ts +0 -26
  118. package/dist/app.d.ts +0 -32
  119. package/dist/attributes.d.ts +0 -1
  120. package/dist/auto-imports.d.ts +0 -1
  121. package/dist/build.d.ts +0 -2
  122. package/dist/cache.d.ts +0 -49
  123. package/dist/cli.d.ts +0 -310
  124. package/dist/dependencies.d.ts +0 -16
  125. package/dist/deploy.d.ts +0 -10
  126. package/dist/docs.d.ts +0 -26
  127. package/dist/email.d.ts +0 -107
  128. package/dist/events.d.ts +0 -5
  129. package/dist/exit-code.d.ts +0 -5
  130. package/dist/hashing.d.ts +0 -36
  131. package/dist/helpers.d.ts +0 -1
  132. package/dist/i18n.d.ts +0 -11
  133. package/dist/index.d.ts +0 -65
  134. package/dist/inspect.d.ts +0 -3
  135. package/dist/logging.d.ts +0 -6
  136. package/dist/model-names.d.ts +0 -1
  137. package/dist/model.d.ts +0 -232
  138. package/dist/payments.d.ts +0 -94
  139. package/dist/ports.d.ts +0 -13
  140. package/dist/promise.d.ts +0 -1
  141. package/dist/push.d.ts +0 -35
  142. package/dist/pwa.d.ts +0 -3
  143. package/dist/queue.d.ts +0 -45
  144. package/dist/reactivity.d.ts +0 -1
  145. package/dist/request.d.ts +0 -49
  146. package/dist/router.d.ts +0 -65
  147. package/dist/scheduler.d.ts +0 -1
  148. package/dist/services.d.ts +0 -81
  149. package/dist/ssg.d.ts +0 -3
  150. package/dist/stacks.d.ts +0 -54
  151. package/dist/storage.d.ts +0 -31
  152. package/dist/table-names.d.ts +0 -1
  153. package/dist/tables.d.ts +0 -34
  154. package/dist/team.d.ts +0 -8
  155. package/dist/ui.d.ts +0 -47
  156. package/dist/utils.d.ts +0 -27
  157. package/src/build.ts +0 -2
  158. package/src/inspect.ts +0 -10
  159. package/src/layout.ts +0 -8
  160. package/src/pwa.ts +0 -8
  161. package/src/ssg.ts +0 -3
@@ -0,0 +1,308 @@
1
+ import type { BunFile } from 'bun';
2
+ import type { Ports } from './ports';
3
+ export type { ErrorLike, SpawnOptions, Subprocess, SyncSubprocess } from 'bun';
4
+ export type { CAC as CLI } from 'cac';
5
+ export declare interface OutroOptions extends CliOptions {
6
+ type?: 'success' | 'error' | 'warning' | 'info'
7
+ startTime?: number
8
+ useSeconds?: boolean
9
+ quiet?: boolean
10
+ message?: string
11
+ }
12
+ export declare interface IntroOptions {
13
+ showPerformance?: boolean
14
+ quiet: boolean
15
+ }
16
+ /**
17
+ * The options to pass to the CLI.
18
+ */
19
+ export declare interface CliOptions {
20
+ verbose?: boolean
21
+ silent?: boolean
22
+ quiet?: boolean
23
+ cwd?: string
24
+ stdio?: [In, Out, Out]
25
+ stdin?: stdin
26
+ stdout?: stdout
27
+ stderr?: stderr
28
+ env?: Record<string, string | undefined>
29
+ background?: boolean
30
+ timeoutMs?: number
31
+ startTime?: number
32
+ withLocalhost?: boolean
33
+ input?: string | ArrayBufferView | ReadableStream | Blob | Response | Request
34
+ project?: string
35
+ }
36
+ export declare interface CleanOptions extends CliOptions {}
37
+ export declare interface CloudCliOptions extends CliOptions {
38
+ ssh?: boolean
39
+ connect?: boolean
40
+ jumpBox?: boolean
41
+ invalidateCache?: boolean
42
+ paths?: string
43
+ diff?: boolean
44
+ }
45
+ export declare interface CommitOptions extends CliOptions {}
46
+ export declare interface FreshOptions extends CliOptions {
47
+ dryRun?: boolean
48
+ quiet?: boolean
49
+ }
50
+ export declare interface InspireOptions extends CliOptions {}
51
+ export declare interface InstallOptions extends CliOptions {}
52
+ export declare interface KeyOptions extends CliOptions {}
53
+ export declare interface MigrateOptions extends CliOptions {
54
+ diff?: boolean
55
+ }
56
+ export declare interface CliQueueOptions extends CliOptions {
57
+ queue?: string
58
+ id?: string | number
59
+ all?: boolean
60
+ force?: boolean
61
+ connection?: string
62
+ }
63
+ export declare interface ReleaseOptions extends CliOptions {
64
+ dryRun?: boolean
65
+ bump?: 'patch' | 'minor' | 'major' | 'prepatch' | 'preminor' | 'premajor' | 'prerelease' | string
66
+ }
67
+ export declare interface ProjectsOptions extends CliOptions {
68
+ list?: boolean
69
+ }
70
+ export declare interface PreinstallOptions extends CliOptions {}
71
+ export declare interface PrepublishOptions extends CliOptions {}
72
+ export declare interface PortsOptions extends CliOptions {
73
+ ports?: Partial<Ports>
74
+ }
75
+ export declare interface SaasOptions extends CliOptions {}
76
+ export declare interface SearchCommandOptions extends CliOptions {
77
+ model: string
78
+ settings: boolean
79
+ flush: boolean
80
+ }
81
+ export declare interface ScheduleOptions extends CliOptions {}
82
+ export declare interface TinkerOptions extends CliOptions {
83
+ eval?: string | boolean
84
+ print?: string | boolean
85
+ noBanner?: boolean
86
+ preload?: string
87
+ }
88
+ export declare interface TypesOptions extends CliOptions {}
89
+ declare type ArrayBufferView = NodeJS.TypedArray | DataView;
90
+ export type Readable = | 'pipe'
91
+ | 'inherit'
92
+ | 'ignore'
93
+ | null // equivalent to 'ignore'
94
+ | undefined // to use default
95
+ | BunFile
96
+ | ArrayBufferView
97
+ | number;
98
+ export type Writable = | 'pipe'
99
+ | 'inherit'
100
+ | 'ignore'
101
+ | null // equivalent to 'ignore'
102
+ | undefined // to use default
103
+ | BunFile
104
+ | ArrayBufferView
105
+ | number
106
+ | ReadableStream
107
+ | Blob
108
+ | Response
109
+ | Request;
110
+ export type In = Readable;
111
+ export type Out = Writable;
112
+ /**
113
+ * The file descriptor for the standard input. It may be:
114
+ *
115
+ * - `"ignore"`, `null`, `undefined`: The process will have no standard input
116
+ * - `"pipe"`: The process will have a new {@link FileSink} for standard input
117
+ * - `"inherit"`: The process will inherit the standard input of the current process
118
+ * - `ArrayBufferView`, `Blob`: The process will read from the buffer
119
+ * - `number`: The process will read from the file descriptor
120
+ *
121
+ * @default "ignore"
122
+ */
123
+ export type stdin = 'ignore' | 'inherit' | 'pipe' | ArrayBufferView | number | null | undefined;
124
+ /**
125
+ * The file descriptor for the standard output. It may be:
126
+ *
127
+ * - `"pipe"`, `undefined`: The process will have a {@link ReadableStream} for standard output/error
128
+ * - `"ignore"`, `null`: The process will have no standard output/error
129
+ * - `"inherit"`: The process will inherit the standard output/error of the current process
130
+ * - `ArrayBufferView`: The process write to the preallocated buffer. Not implemented.
131
+ * - `number`: The process will write to the file descriptor
132
+ *
133
+ * @default "pipe"
134
+ */
135
+ export type stdout = 'ignore' | 'inherit' | 'pipe' | ArrayBufferView | number;
136
+ /**
137
+ * The file descriptor for the standard error. It may be:
138
+ *
139
+ * - `"pipe"`, `undefined`: The process will have a {@link ReadableStream} for standard output/error
140
+ * - `"ignore"`, `null`: The process will have no standard output/error
141
+ * - `"inherit"`: The process will inherit the standard output/error of the current process
142
+ * - `ArrayBufferView`: The process write to the preallocated buffer. Not implemented.
143
+ * - `number`: The process will write to the file descriptor
144
+ *
145
+ * @default "inherit" for `spawn`
146
+ * "pipe" for `spawnSync`
147
+ */
148
+ export type stderr = 'ignore' | 'inherit' | 'pipe' | ArrayBufferView | number;
149
+ // type SpinnerOptions = Ora
150
+ export type CliOptionsKeys = keyof CliOptions;
151
+ export type CliConfig = CliOptions;
152
+ // export type { Ora as SpinnerOptions } from 'ora'
153
+ // the `domains` option is only available for the `deploy` command
154
+ // the `count` option is only available for the `seed` command
155
+ export type ActionOption = 'types' | 'domains' | 'count';
156
+ /**
157
+ * The options to pass to the Action.
158
+ */
159
+ export type ActionOptions = {
160
+ types?: boolean
161
+ domains?: boolean
162
+ count?: number
163
+ dryRun?: boolean // used in buddy release
164
+ } & CliOptions &
165
+ DomainsOptions;
166
+ export type BuildOption = | 'components'
167
+ | 'webComponents'
168
+ | 'elements'
169
+ | 'functions'
170
+ | 'docs'
171
+ | 'views'
172
+ | 'stacks'
173
+ | 'all'
174
+ | 'buddy'
175
+ | 'server';
176
+ export type BuildOptions = {
177
+ [key in BuildOption]: boolean
178
+ } & CliOptions;
179
+ export type AddOption = 'table' | 'calendar' | 'all';
180
+ export type AddOptions = {
181
+ [key in AddOption]?: boolean
182
+ } & CliOptions;
183
+ export type CreateStringOption = 'name';
184
+ export type CreateBooleanOption = | 'ui'
185
+ | 'components'
186
+ | 'web-components'
187
+ | 'vue'
188
+ | 'views'
189
+ | 'functions'
190
+ | 'api'
191
+ | 'database';
192
+ export type CreateOptions = {
193
+ [key in CreateBooleanOption]: boolean
194
+ } & {
195
+ [key in CreateStringOption]: string
196
+ } & CliOptions;
197
+ export type DevOption = | 'components'
198
+ | 'docs'
199
+ | 'frontend'
200
+ | 'api'
201
+ | 'desktop'
202
+ | 'all'
203
+ | 'email'
204
+ | 'system-tray'
205
+ | 'interactive'
206
+ | 'verbose';
207
+ export type DevOptions = {
208
+ [key in DevOption]: boolean
209
+ } & CliOptions;
210
+ export type GeneratorOption = | 'types'
211
+ | 'entries'
212
+ | 'webTypes'
213
+ | 'customData'
214
+ | 'ideHelpers'
215
+ | 'componentMeta'
216
+ | 'coreSymlink'
217
+ | 'openApiSpec'
218
+ | 'pantryConfig'
219
+ | 'openapi'
220
+ | 'modelFiles';
221
+ export type GeneratorOptions = {
222
+ [key in GeneratorOption]?: boolean
223
+ } & CliOptions;
224
+ export type LintOption = 'fix';
225
+ export type LintOptions = {
226
+ [key in LintOption]: boolean
227
+ } & CliOptions;
228
+ export type MakeStringOption = 'name' | 'chat' | 'sms' | 'env';
229
+ export type MakeBooleanOption = | 'component'
230
+ | 'page'
231
+ | 'function'
232
+ | 'language'
233
+ | 'database'
234
+ | 'migration'
235
+ | 'model'
236
+ | 'notification'
237
+ | 'stack'
238
+ | 'middleware'
239
+ | 'dryRun'
240
+ | 'withValidation'
241
+ | 'withAuth';
242
+ export type MakeOptions = {
243
+ [key in MakeBooleanOption]: boolean
244
+ } & {
245
+ [key in MakeStringOption]: string
246
+ } & CliOptions;
247
+ export type UpgradeBoolean = 'framework' | 'dependencies' | 'bun' | 'shell' | 'binary' | 'all' | 'force' | 'canary' | 'stable' | 'noPostinstall' | 'postinstall';
248
+ export type UpgradeString = 'version' | 'from';
249
+ export type UpgradeOptions = {
250
+ [key in UpgradeBoolean]?: boolean
251
+ } & {
252
+ [key in UpgradeString]?: string
253
+ } & CliOptions;
254
+ export type ExamplesString = 'version';
255
+ export type ExamplesBoolean = 'components' | 'vue' | 'webComponents' | 'elements' | 'all' | 'force';
256
+ export type ExamplesOption = ExamplesString & ExamplesBoolean;
257
+ export type ExamplesOptions = {
258
+ [key in ExamplesString]: string
259
+ } & {
260
+ [key in ExamplesBoolean]: boolean
261
+ } & CliOptions;
262
+ export type TestingOptions = CliOptions & {
263
+ ui?: boolean
264
+ feature?: boolean
265
+ unit?: boolean
266
+ }
267
+ export type DomainsOptions = CliOptions & {
268
+ domain?: string
269
+ yes?: boolean
270
+ years?: number
271
+ privacy?: boolean
272
+ autoRenew?: boolean
273
+ registrantFirstName?: string
274
+ registrantLastName?: string
275
+ registrantOrganization?: string
276
+ registrantAddress?: string
277
+ registrantCity?: string
278
+ registrantState?: string
279
+ registrantCountry?: string
280
+ registrantZip?: string
281
+ registrantPhone?: string
282
+ registrantEmail?: string
283
+ adminFirstName?: string
284
+ adminLastName?: string
285
+ adminOrganization?: string
286
+ adminAddress?: string
287
+ adminCity?: string
288
+ adminState?: string
289
+ adminCountry?: string
290
+ adminZip?: string
291
+ adminPhone?: string
292
+ adminEmail?: string
293
+ techFirstName?: string
294
+ techLastName?: string
295
+ techOrganization?: string
296
+ techAddress?: string
297
+ techCity?: string
298
+ techState?: string
299
+ techCountry?: string
300
+ techZip?: string
301
+ techPhone?: string
302
+ techEmail?: string
303
+ privacyAdmin?: boolean
304
+ privacyTech?: boolean
305
+ privacyRegistrant?: boolean
306
+ contactType?: string
307
+ }
308
+ export type LibEntryType = 'web-components' | 'functions' | 'all';
@@ -1,8 +1,33 @@
1
1
  import type { ApiConfig } from './api';
2
2
  import type { FirewallConfig } from './security';
3
-
4
- export declare type CountryCode =
5
- | 'AD'
3
+ declare interface SiteConfig {
4
+ domain: string
5
+ path: string
6
+ }
7
+ export declare interface TunnelCloudConfig {
8
+ enabled: boolean
9
+ domain?: string
10
+ region?: string
11
+ instanceType?: string
12
+ prefix?: string
13
+ ssl?: {
14
+ enabled: boolean
15
+ porkbunApiKey?: string
16
+ porkbunSecretKey?: string
17
+ }
18
+ }
19
+ export declare interface CloudOptions {
20
+ sites: {
21
+ root: string
22
+ path: string
23
+ [site: string]: string | SiteConfig
24
+ }
25
+ infrastructure: InfrastructureOptions
26
+ cdn: any
27
+ api: any
28
+ firewall: any
29
+ }
30
+ export type CountryCode = | 'AD'
6
31
  | 'AE'
7
32
  | 'AF'
8
33
  | 'AG'
@@ -250,23 +275,47 @@ export declare type CountryCode =
250
275
  | 'YT'
251
276
  | 'ZA'
252
277
  | 'ZM'
253
- | 'ZW'
254
-
255
- type Environment = 'development' | 'staging' | 'production'
256
-
257
- interface SiteConfig {
258
- domain: string
259
- path: string
260
- }
261
-
262
- type InfrastructureOptions = Partial<{
263
- type: 'serverless'
278
+ | 'ZW';
279
+ declare type Environment = 'development' | 'staging' | 'production';
280
+ declare type InfrastructureOptions = Partial<{
281
+ type: 'serverless' // | 'server' coming soon
264
282
  driver: 'aws'
265
283
  api: ApiConfig
266
284
  storage: object
267
285
 
286
+ /**
287
+ * **Firewall Settings**
288
+ *
289
+ * These settings are used to configure the firewall.
290
+ *
291
+ * @see https://stacksjs.com/docs/cloud#firewall
292
+ *
293
+ * @example
294
+ * ```ts
295
+ * firewall: {
296
+ * enabled: true, // default: true
297
+ * countryCodes: ['RU', 'IN'], // default: []
298
+ * ipAddresses: ['56.123.456.789'], // default: []
299
+ * queryString: ['foo', 'bar'], // default: []
300
+ * httpHeaders: ['x-foo', 'x-bar'], // default: []
301
+ * rateLimitPerMinute: 1000, // default: 1000
302
+ * useIpReputationLists: true, // default: true
303
+ * useKnownBadInputsRuleSet: true // default: true
304
+ * },
305
+ * ```
306
+ */
268
307
  firewall: FirewallConfig
269
308
 
309
+ /**
310
+ * **Environments**
311
+ *
312
+ * These are the environments that your cloud will deploy.
313
+ *
314
+ * @example
315
+ * ```ts
316
+ * environments: ['production', 'staging', 'development']
317
+ * ```
318
+ */
270
319
  environments: Environment[]
271
320
 
272
321
  cdn: {
@@ -296,16 +345,22 @@ type InfrastructureOptions = Partial<{
296
345
  cli: boolean
297
346
  docs: boolean
298
347
  fileSystem: boolean
299
- }>
300
-
301
- export interface CloudOptions {
302
- sites: {
303
- root: string
304
- path: string
305
- [site: string]: string | SiteConfig
306
- }
307
-
308
- infrastructure: InfrastructureOptions
309
- }
310
348
 
311
- export type CloudConfig = Partial<CloudOptions>
349
+ /**
350
+ * **Tunnel Configuration**
351
+ *
352
+ * Deploy a custom tunnel server for sharing local dev servers.
353
+ * Only needed for custom domains — localtunnel.dev is the shared default.
354
+ *
355
+ * @example
356
+ * ```ts
357
+ * tunnel: {
358
+ * enabled: true,
359
+ * domain: 'tunnel.mycompany.com',
360
+ * ssl: { enabled: true },
361
+ * }
362
+ * ```
363
+ */
364
+ tunnel: TunnelCloudConfig
365
+ }>;
366
+ export type CloudConfig = Partial<CloudOptions>;
@@ -1,12 +1,9 @@
1
- export type { Options as ComponentOptions } from 'unplugin-vue-components'
2
1
  export declare interface TagOption {
3
2
  name: string | string[]
4
-
5
3
  description?: string
6
-
7
4
  attributes?: {
8
5
  name: string
9
6
  description: string
10
7
  }[]
11
8
  }
12
- export declare type TagsOptions = TagOption[]
9
+ export type TagsOptions = TagOption[];
@@ -9,4 +9,4 @@ export declare interface ConfigureOptions {
9
9
  output: string
10
10
  quiet: boolean
11
11
  }
12
- export declare type ConfigureConfig = Partial<ConfigureOptions>
12
+ export type ConfigureConfig = Partial<ConfigureOptions>;
@@ -1,51 +1,18 @@
1
1
  import type { IntRange } from '@stacksjs/cron';
2
-
3
- export declare type Job = JobOptions
4
- export type Jobs = Job[]
5
- export type CronJob = Job
6
- export type CronJobs = Jobs
7
-
8
- export enum Every {
9
- Second = '* * * * * *',
10
- FiveSeconds = '*/5 * * * * *',
11
- TenSeconds = '*/10 * * * * *',
12
- ThirtySeconds = '*/30 * * * * *',
13
- Minute = '* * * * *',
14
- TwoMinutes = '*/2 * * * *',
15
- FiveMinutes = '*/5 * * * *',
16
- TenMinutes = '*/10 * * * *',
17
- FifteenMinutes = '*/15 * * * *',
18
- ThirtyMinutes = '*/30 * * * *',
19
- Hour = '0 * * * *',
20
- HalfHour = '0,30 * * * *',
21
- Day = '0 0 * * *',
22
- Week = '0 0 * * 0',
23
- Weekday = '0 0 * * 1-5',
24
- Weekend = '0 0 * * 0,6',
25
- Month = '0 0 1 * *',
26
- Year = '0 0 1 1 *',
27
- }
28
-
29
- export type JobHandler = (data?: any) => Promise<any> | any
30
-
31
- type BackoffStrategy = 'fixed' | 'exponential' | 'linear' | 'random'
32
-
33
- export interface JitterConfig {
2
+ export declare interface JitterConfig {
34
3
  enabled: boolean
35
4
  factor?: number
36
5
  minDelay?: number
37
6
  maxDelay?: number
38
7
  }
39
-
40
- export interface BackoffConfig {
8
+ export declare interface BackoffConfig {
41
9
  strategy: BackoffStrategy
42
10
  initialDelay: number
43
11
  factor?: number
44
12
  maxDelay?: number
45
13
  jitter?: JitterConfig
46
14
  }
47
-
48
- export interface JobOptions {
15
+ export declare interface JobOptions {
49
16
  name?: string
50
17
  handle?: string | JobHandler
51
18
  action?: string
@@ -62,4 +29,33 @@ export interface JobOptions {
62
29
  ttl?: number
63
30
  immediate?: boolean
64
31
  meta?: Record<string, any>
65
- }
32
+ }
33
+ export type Job = JobOptions;
34
+ export type Jobs = Job[];
35
+ export type CronJob = Job;
36
+ export type CronJobs = Jobs;
37
+ export type JobHandler = (_data?: any) => Promise<any> | any;
38
+ /**
39
+ * Represents different backoff strategies for job retries
40
+ */
41
+ declare type BackoffStrategy = 'fixed' | 'exponential' | 'linear' | 'random';
42
+ export declare enum Every {
43
+ Second = '* * * * * *',
44
+ FiveSeconds = '*/5 * * * * *',
45
+ TenSeconds = '*/10 * * * * *',
46
+ ThirtySeconds = '*/30 * * * * *',
47
+ Minute = '* * * * *',
48
+ TwoMinutes = '*/2 * * * *',
49
+ FiveMinutes = '*/5 * * * *',
50
+ TenMinutes = '*/10 * * * *',
51
+ FifteenMinutes = '*/15 * * * *',
52
+ ThirtyMinutes = '*/30 * * * *',
53
+ Hour = '0 * * * *',
54
+ HalfHour = '0,30 * * * *',
55
+ Day = '0 0 * * *',
56
+ Week = '0 0 * * 0',
57
+ Weekday = '0 0 * * 1-5',
58
+ Weekend = '0 0 * * 0,6',
59
+ Month = '0 0 1 * *',
60
+ Year = '0 0 1 1 *',
61
+ }
@@ -0,0 +1,33 @@
1
+ /**
2
+ * **Dashboard Options**
3
+ *
4
+ * Controls which sections render in the `buddy dev --dashboard` sidebar.
5
+ * Every section defaults to enabled — set a flag to `false` in
6
+ * `config/dashboard.ts` to hide it (for example, projects that don't
7
+ * use commerce features set `commerce.enabled: false`).
8
+ *
9
+ * The `data` section is always visible (it's where every project's
10
+ * userland models live). It exposes per-row toggles for the basic
11
+ * built-in rows so a project can drop, say, the newsletter Subscribers
12
+ * row when there's no newsletter without losing the model viewer.
13
+ */
14
+ export declare interface DashboardOptions {
15
+ sections?: {
16
+ library?: { enabled?: boolean }
17
+ content?: { enabled?: boolean }
18
+ commerce?: { enabled?: boolean }
19
+ marketing?: { enabled?: boolean }
20
+ analytics?: { enabled?: boolean }
21
+ management?: { enabled?: boolean }
22
+ utilities?: { enabled?: boolean }
23
+ data?: {
24
+ dashboard?: { enabled?: boolean }
25
+ activity?: { enabled?: boolean }
26
+ users?: { enabled?: boolean }
27
+ teams?: { enabled?: boolean }
28
+ subscribers?: { enabled?: boolean }
29
+ allModels?: { enabled?: boolean }
30
+ }
31
+ }
32
+ }
33
+ export type DashboardConfig = Partial<DashboardOptions>;
@@ -1,6 +1,7 @@
1
+ import type { SupportedDialect } from 'bun-query-builder';
1
2
  export declare interface DatabaseOptions {
2
- default: string
3
-
3
+ default: SupportedDialect
4
+ logging?: boolean
4
5
  connections: {
5
6
  mysql?: {
6
7
  url?: string
@@ -11,13 +12,11 @@ export declare interface DatabaseOptions {
11
12
  password?: string
12
13
  prefix?: string
13
14
  }
14
-
15
15
  sqlite: {
16
16
  url?: string
17
17
  database?: string
18
18
  prefix?: string
19
19
  }
20
-
21
20
  dynamodb?: {
22
21
  key?: string
23
22
  secret?: string
@@ -25,7 +24,6 @@ export declare interface DatabaseOptions {
25
24
  prefix?: string
26
25
  endpoint?: string
27
26
  }
28
-
29
27
  postgres?: {
30
28
  url?: string
31
29
  host?: string
@@ -36,19 +34,29 @@ export declare interface DatabaseOptions {
36
34
  prefix?: string
37
35
  }
38
36
  }
39
-
40
37
  migrations: string
41
38
  migrationLocks: string
39
+ queryLogging?: {
40
+ enabled: boolean
41
+ slowThreshold: number
42
+ retention: number
43
+ pruneFrequency: number
44
+ excludedQueries?: string[]
45
+ analysis?: {
46
+ enabled: boolean
47
+ analyzeAll: boolean
48
+ explainPlan: boolean
49
+ suggestions: boolean
50
+ }
51
+ }
42
52
  }
43
- export declare type DatabaseConfig = Partial<DatabaseOptions>
44
-
45
- export interface FactoryOptions {
53
+ export declare interface FactoryOptions {
46
54
  name: string
47
55
  count?: number
48
56
  items: object
49
57
  columns: object
50
58
  }
51
-
52
- export interface SchemaOptions {
59
+ export declare interface SchemaOptions {
53
60
  database: string
54
- }
61
+ }
62
+ export type DatabaseConfig = Partial<DatabaseOptions>;
@@ -0,0 +1,17 @@
1
+ /**
2
+ * **Dependencies Manager**
3
+ *
4
+ * This configuration defines all of your dependencies options. Because Stacks is fully-typed,
5
+ * you may hover any of the options below and the definitions will be provided. In case
6
+ * you have any questions, feel free to reach out via Discord or GitHub Discussions.
7
+ */
8
+ export declare interface DependenciesOptions {
9
+ 'bun.sh': string | '0.7.1'
10
+ 'sqlite.org'?: string | '^3.42.0'
11
+ 'mysql.com'?: string | '^8.0.33'
12
+ 'mariadb.org'?: string | '^10.6.5'
13
+ 'postgresql.org'?: string | '^14.1'
14
+ 'redis.io'?: string | '^7.0.11'
15
+ 'aws.amazon.com/cli'?: string | '^2.12.7'
16
+ }
17
+ export type DependenciesConfig = DependenciesOptions;
@@ -0,0 +1,16 @@
1
+ import type { CliOptions } from './cli';
2
+ /**
3
+ * **Deploy Options**
4
+ *
5
+ * This configuration defines all of your deployment options. Because Stacks is fully-typed,
6
+ * you may hover any of the options below and the definitions will be provided. In case
7
+ * you have any questions, feel free to reach out via Discord or GitHub Discussions.
8
+ */
9
+ export declare interface DeployOptions extends CliOptions {
10
+ domain?: string
11
+ deploy?: boolean
12
+ prod?: boolean
13
+ dev?: boolean
14
+ staging?: boolean
15
+ yes?: boolean
16
+ }