@stacksjs/types 0.70.88 → 0.70.91

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 (77) hide show
  1. package/dist/ai.d.ts +37 -0
  2. package/dist/analytics.d.ts +36 -0
  3. package/dist/api.d.ts +26 -0
  4. package/dist/app.d.ts +28 -0
  5. package/dist/attributes.d.ts +1 -0
  6. package/dist/auth.d.ts +62 -0
  7. package/dist/auto-imports.d.ts +8 -0
  8. package/dist/binary.d.ts +11 -0
  9. package/dist/cache.d.ts +88 -0
  10. package/dist/cdn.d.ts +4 -0
  11. package/dist/chat.d.ts +69 -0
  12. package/dist/cli.d.ts +316 -0
  13. package/dist/cloud.d.ts +366 -0
  14. package/dist/cms.d.ts +12 -0
  15. package/dist/commerce.d.ts +14 -0
  16. package/dist/components.d.ts +9 -0
  17. package/dist/configure.d.ts +12 -0
  18. package/dist/cors.d.ts +47 -0
  19. package/dist/cron-jobs.d.ts +61 -0
  20. package/dist/dashboard.d.ts +108 -0
  21. package/dist/database.d.ts +76 -0
  22. package/dist/dependencies.d.ts +17 -0
  23. package/dist/deploy.d.ts +16 -0
  24. package/dist/dns.d.ts +362 -0
  25. package/dist/docs.d.ts +23 -0
  26. package/dist/email.d.ts +207 -0
  27. package/dist/env.d.ts +1 -0
  28. package/dist/errors.d.ts +84 -0
  29. package/dist/events.d.ts +31 -0
  30. package/dist/exit-code.d.ts +10 -0
  31. package/dist/feature-flags.d.ts +17 -0
  32. package/dist/file-systems.d.ts +60 -0
  33. package/dist/git.d.ts +60 -0
  34. package/dist/hashing.d.ts +57 -0
  35. package/dist/helpers.d.ts +1 -0
  36. package/dist/i18n.d.ts +65 -0
  37. package/dist/index.d.ts +80 -0
  38. package/dist/index.js +2 -0
  39. package/dist/library.d.ts +799 -0
  40. package/dist/logging.d.ts +15 -0
  41. package/dist/manifest.d.ts +9 -0
  42. package/dist/marketing.d.ts +12 -0
  43. package/dist/model-dashboard-augmentation.d.ts +8 -0
  44. package/dist/model-names.d.ts +1 -0
  45. package/dist/model.d.ts +256 -0
  46. package/dist/monitoring.d.ts +12 -0
  47. package/dist/notifications.d.ts +126 -0
  48. package/dist/oauth.d.ts +290 -0
  49. package/dist/pages.d.ts +10 -0
  50. package/dist/payments.d.ts +322 -0
  51. package/dist/phone.d.ts +65 -0
  52. package/dist/ports.d.ts +20 -0
  53. package/dist/promise.d.ts +1 -0
  54. package/dist/push.d.ts +108 -0
  55. package/dist/queue.d.ts +312 -0
  56. package/dist/reactivity.d.ts +1 -0
  57. package/dist/realtime.d.ts +443 -0
  58. package/dist/request.d.ts +265 -0
  59. package/dist/response.d.ts +15 -0
  60. package/dist/router.d.ts +105 -0
  61. package/dist/saas.d.ts +32 -0
  62. package/dist/scheduler.d.ts +1 -0
  63. package/dist/search-engine.d.ts +129 -0
  64. package/dist/security.d.ts +18 -0
  65. package/dist/server.d.ts +16 -0
  66. package/dist/services.d.ts +149 -0
  67. package/dist/settings-config.d.ts +9 -0
  68. package/dist/sms.d.ts +144 -0
  69. package/dist/stack-extensions.d.ts +137 -0
  70. package/dist/stacks.d.ts +46 -0
  71. package/dist/storage.d.ts +104 -0
  72. package/dist/table-names.d.ts +1 -0
  73. package/dist/tables.d.ts +34 -0
  74. package/dist/team.d.ts +7 -0
  75. package/dist/ui.d.ts +55 -0
  76. package/dist/utils.d.ts +39 -0
  77. package/package.json +3 -3
package/dist/ai.d.ts ADDED
@@ -0,0 +1,37 @@
1
+ /**
2
+ * **AI Options**
3
+ *
4
+ * This configuration defines all of your AI options. Because Stacks is fully-typed, you
5
+ * may hover any of the options below and the definitions will be provided. In case you
6
+ * have any questions, feel free to reach out via Discord or GitHub Discussions.
7
+ */
8
+ export declare interface AiOptions {
9
+ default: AiModel
10
+ models: AiModel[]
11
+ deploy: boolean
12
+ }
13
+ declare type AiModel = | 'amazon.titan-embed-text-v1'
14
+ | 'amazon.titan-embed-text-v2:0'
15
+ | 'amazon.titan-text-lite-v1'
16
+ | 'amazon.titan-text-express-v1'
17
+ | 'amazon.titan-text-premier-v1:0'
18
+ | 'amazon.titan-embed-image-v1'
19
+ | 'amazon.titan-image-generator-v1'
20
+ | 'amazon.titan-image-generator-v2:0'
21
+ // Anthropic Claude (current models via Bedrock)
22
+ | 'anthropic.claude-sonnet-4-20250514-v1:0'
23
+ | 'anthropic.claude-haiku-4-20250514-v1:0'
24
+ | 'anthropic.claude-3-5-sonnet-20241022-v2:0'
25
+ | 'anthropic.claude-3-5-haiku-20241022-v1:0'
26
+ | 'anthropic.claude-3-opus-20240229-v1:0'
27
+ | 'anthropic.claude-3-sonnet-20240229-v1:0'
28
+ | 'anthropic.claude-3-haiku-20240307-v1:0'
29
+ // Meta Llama 3
30
+ | 'meta.llama3-8b-instruct-v1:0'
31
+ | 'meta.llama3-70b-instruct-v1:0'
32
+ | 'meta.llama3-1-8b-instruct-v1:0'
33
+ | 'meta.llama3-1-70b-instruct-v1:0'
34
+ | 'meta.llama3-1-405b-instruct-v1:0'
35
+ // Allow custom model strings
36
+ | (string & {});
37
+ export type AiConfig = Partial<AiOptions>;
@@ -0,0 +1,36 @@
1
+ /**
2
+ * **Analytics Options**
3
+ *
4
+ * This configuration defines all of your Analytics options. Because Stacks is fully-typed, you
5
+ * may hover any of the options below and the definitions will be provided. In case you
6
+ * have any questions, feel free to reach out via Discord or GitHub Discussions.
7
+ */
8
+ export declare interface AnalyticsOptions {
9
+ driver: 'google-analytics' | 'fathom' | 'plausible' | 'self-hosted'
10
+ drivers: {
11
+ googleAnalytics?: {
12
+ trackingId: string
13
+ debug?: boolean
14
+ }
15
+ fathom?: {
16
+ siteId: string
17
+ scriptUrl?: string
18
+ honorDnt?: boolean
19
+ spa?: boolean
20
+ }
21
+ plausible?: {
22
+ domain: string
23
+ scriptUrl?: string
24
+ trackLocalhost?: boolean
25
+ hashMode?: boolean
26
+ }
27
+ selfHosted?: {
28
+ siteId: string
29
+ apiEndpoint: string
30
+ honorDnt?: boolean
31
+ trackHashChanges?: boolean
32
+ trackOutboundLinks?: boolean
33
+ }
34
+ }
35
+ }
36
+ export type AnalyticsConfig = Partial<AnalyticsOptions>;
package/dist/api.d.ts ADDED
@@ -0,0 +1,26 @@
1
+ /**
2
+ * **API Options**
3
+ *
4
+ * This configuration defines all of your API options. Because Stacks is fully-typed, you
5
+ * may hover any of the options below and the definitions will be provided. In case you
6
+ * have any questions, feel free to reach out via Discord or GitHub Discussions.
7
+ */
8
+ export declare interface ApiOptions {
9
+ description: string
10
+ prefix: string
11
+ middleware: string[]
12
+ routes:
13
+ | {
14
+ index: boolean
15
+ show: boolean
16
+ store: boolean
17
+ update: boolean
18
+ destroy: boolean
19
+ }
20
+ | boolean
21
+ prewarm: boolean | number
22
+ memorySize: number
23
+ timeout: number
24
+ deploy: boolean
25
+ }
26
+ export type ApiConfig = Partial<ApiOptions>;
package/dist/app.d.ts ADDED
@@ -0,0 +1,28 @@
1
+ /**
2
+ * **Application Options**
3
+ *
4
+ * This configuration defines all of your application 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 AppOptions {
9
+ name: string
10
+ description: string
11
+ env: AppEnvType
12
+ url: string
13
+ redirectUrls: string | string[]
14
+ debug: boolean
15
+ maintenanceMode: boolean
16
+ comingSoonMode?: boolean
17
+ comingSoonSecret?: string
18
+ key: string
19
+ timezone: string
20
+ locale: string
21
+ fallbackLocale: 'en'
22
+ cipher: string
23
+ docMode: boolean
24
+ primaryColor: string
25
+ supportEmail: string
26
+ }
27
+ export type AppEnvType = 'local' | 'dev' | 'stage' | 'prod' | 'testing' | string;
28
+ export type AppConfig = Partial<AppOptions>;
@@ -0,0 +1 @@
1
+ export type * from '../../../types/attributes';
package/dist/auth.d.ts ADDED
@@ -0,0 +1,62 @@
1
+ export declare interface AuthOptions {
2
+ enabled?: boolean
3
+ env?: string[]
4
+ default: string
5
+ guards: {
6
+ [key: string]: {
7
+ driver: 'session' | 'token'
8
+ provider: string
9
+ }
10
+ }
11
+ providers: {
12
+ [key: string]: {
13
+ driver: 'database'
14
+ table: string
15
+ }
16
+ }
17
+ username: string
18
+ password: string
19
+ tokenExpiry: number
20
+ refreshTokenExpiry?: number
21
+ tokenRotation: number
22
+ defaultAbilities: string[]
23
+ defaultTokenName: string
24
+ passwordReset: {
25
+ expire: number
26
+ throttle: number
27
+ url?: string
28
+ }
29
+ emailVerification?: {
30
+ expire?: number
31
+ url?: string
32
+ }
33
+ session?: {
34
+ enforceFingerprint?: boolean | { ip?: boolean, userAgent?: boolean }
35
+ }
36
+ registration?: {
37
+ preventEnumeration?: boolean
38
+ }
39
+ }
40
+ export declare interface AuthInstance {
41
+ guard: string
42
+ provider: string
43
+ user?: any
44
+ token?: string
45
+ }
46
+ export declare interface AuthDriver {
47
+ attempt: (credentials: any) => Promise<boolean>
48
+ validate: (token: string) => Promise<boolean>
49
+ login: (credentials: any) => Promise<{ token: string } | null>
50
+ logout: () => Promise<void>
51
+ user: () => Promise<any>
52
+ token: () => string | null
53
+ }
54
+ export declare interface Authenticatable {
55
+ getAuthIdentifier: () => any
56
+ getAuthPassword: () => string
57
+ getRememberToken: () => string
58
+ setRememberToken: (token: string) => void
59
+ }
60
+ export type AuthConfig = Partial<AuthOptions>;
61
+ export type GuardType = 'session' | 'token';
62
+ export type ProviderType = 'database';
@@ -0,0 +1,8 @@
1
+ // `unplugin-auto-import` isn't a runtime dependency of @stacksjs/types — we
2
+ // only re-publish its option shape so users get autocomplete in user-land
3
+ // configs. The local type intentionally mirrors the upstream `Options`
4
+ // surface as an open record; if/when this package adopts unplugin-auto-import
5
+ // as a real dependency, swap this for `import type { Options }` from there.
6
+ export declare interface AutoImportsOptions {
7
+ [key: string]: unknown
8
+ }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * The Binary/CLI Options used in `./config/cli.ts`.
3
+ */
4
+ export declare interface BinaryOptions {
5
+ name: string
6
+ command: string
7
+ description: string
8
+ source: string
9
+ deploy: boolean
10
+ }
11
+ export type BinaryConfig = Partial<BinaryOptions>;
@@ -0,0 +1,88 @@
1
+ /**
2
+ * Cache Options - Configuration for the caching system
3
+ */
4
+ export declare interface CacheOptions {
5
+ driver: 'memory' | 'redis' | 'singlestore'
6
+ prefix: string
7
+ ttl: number
8
+ maxKeys?: number
9
+ useClones?: boolean
10
+ drivers: {
11
+ redis?: {
12
+ url?: string
13
+ host: string
14
+ port: number
15
+ username?: string
16
+ password?: string
17
+ database?: number
18
+ tls?: boolean
19
+ }
20
+ memory?: {
21
+ maxKeys?: number
22
+ checkPeriod?: number
23
+ deleteOnExpire?: boolean
24
+ }
25
+ singlestore?: {
26
+ host?: string
27
+ port?: number
28
+ username?: string
29
+ password?: string
30
+ database?: string
31
+ table?: string
32
+ ssl?: boolean
33
+ }
34
+ }
35
+ }
36
+ /**
37
+ * Cache Driver Interface - Defines the API for all cache implementations
38
+ */
39
+ export declare interface CacheDriver {
40
+ get: <T>(key: string) => Promise<T | undefined>
41
+ mget: <T>(keys: string[]) => Promise<Record<string, T>>
42
+ set: <T>(key: string, value: T, ttl?: number) => Promise<boolean>
43
+ mset: <T>(entries: Array<{ key: string, value: T, ttl?: number }>) => Promise<boolean>
44
+ setForever: <T>(key: string, value: T) => Promise<boolean>
45
+ getOrSet: <T>(key: string, fetcher: () => T | Promise<T>, ttl?: number) => Promise<T>
46
+ del: (keys: string | string[]) => Promise<number>
47
+ has: (key: string) => Promise<boolean>
48
+ missing: (key: string) => Promise<boolean>
49
+ remove: (key: string) => Promise<void>
50
+ deleteMany: (keys: string[]) => Promise<number>
51
+ clear: () => Promise<void>
52
+ flush: () => Promise<void>
53
+ keys: (pattern?: string) => Promise<string[]>
54
+ getTtl: (key: string) => Promise<number | undefined>
55
+ ttl: (key: string, ttl: number) => Promise<boolean>
56
+ take: <T>(key: string) => Promise<T | undefined>
57
+ remember: <T>(key: string, ttl: number, callback: () => T | Promise<T>) => Promise<T>
58
+ rememberForever: <T>(key: string, callback: () => T | Promise<T>) => Promise<T>
59
+ getStats: () => Promise<CacheStats>
60
+ close: () => Promise<void>
61
+ disconnect: () => Promise<void>
62
+ tags?: (tags: readonly string[]) => TaggedCacheScope
63
+ }
64
+ /**
65
+ * Returned by `cache.tags(tags)`. Tag-scoped writes/reads with a
66
+ * cascading `flush()`.
67
+ */
68
+ export declare interface TaggedCacheScope {
69
+ put: <T>(key: string, value: T, ttl?: number) => Promise<boolean>
70
+ set: <T>(key: string, value: T, ttl?: number) => Promise<boolean>
71
+ setForever: <T>(key: string, value: T) => Promise<boolean>
72
+ remember: <T>(key: string, ttl: number, callback: () => T | Promise<T>) => Promise<T>
73
+ rememberForever: <T>(key: string, callback: () => T | Promise<T>) => Promise<T>
74
+ get: <T>(key: string) => Promise<T | undefined>
75
+ has: (key: string) => Promise<boolean>
76
+ flush: () => Promise<number>
77
+ }
78
+ /**
79
+ * Cache Statistics
80
+ */
81
+ export declare interface CacheStats {
82
+ hits: number
83
+ misses: number
84
+ keys: number
85
+ size?: number
86
+ hitRate?: number
87
+ }
88
+ export type CacheConfig = Partial<CacheOptions>;
package/dist/cdn.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ export declare interface CdnOptions {
2
+ driver: string
3
+ }
4
+ export type CdnConfig = Partial<CdnOptions>;
package/dist/chat.d.ts ADDED
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Configuration options for chat drivers
3
+ */
4
+ export declare interface ChatDriverConfig {
5
+ maxRetries?: number
6
+ retryTimeout?: number
7
+ [key: string]: any
8
+ }
9
+ /**
10
+ * Base chat message interface
11
+ */
12
+ export declare interface ChatMessage {
13
+ to: string | string[]
14
+ from?: {
15
+ id?: string
16
+ name?: string
17
+ avatar?: string
18
+ }
19
+ subject?: string
20
+ content?: string
21
+ template?: string
22
+ data?: Record<string, any>
23
+ attachments?: ChatAttachment[]
24
+ onSuccess?: () => void | Promise<void> | Partial<ChatResult>
25
+ onError?: (error: Error) => void | Promise<void> | Partial<ChatResult>
26
+ handle?: () => void | Promise<void> | Partial<ChatResult>
27
+ [key: string]: any
28
+ }
29
+ /**
30
+ * Structure for message attachments
31
+ */
32
+ export declare interface ChatAttachment {
33
+ filename: string
34
+ content: string | Uint8Array
35
+ contentType: string
36
+ options?: Record<string, any>
37
+ }
38
+ /**
39
+ * Standard result object for chat operations
40
+ */
41
+ export declare interface ChatResult {
42
+ success: boolean
43
+ message: string
44
+ provider: string
45
+ messageId?: string
46
+ data?: Record<string, any>
47
+ }
48
+ /**
49
+ * Base chat driver interface
50
+ */
51
+ export declare interface ChatDriver {
52
+ name: string
53
+ configure: (config: ChatDriverConfig) => void
54
+ send: (message: ChatMessage, options?: ChatOptions) => Promise<ChatResult>
55
+ }
56
+ /**
57
+ * Slack-specific response
58
+ */
59
+ export declare interface SlackResponse {
60
+ id: string
61
+ channel?: string
62
+ ts?: string
63
+ [key: string]: any
64
+ }
65
+ export type ChatConfig = ChatOptions;
66
+ /**
67
+ * Chat driver options
68
+ */
69
+ export type ChatOptions = Record<string, any>;
package/dist/cli.d.ts ADDED
@@ -0,0 +1,316 @@
1
+ import type { BunFile } from 'bun';
2
+ import type { Ports } from './ports';
3
+ export type { ErrorLike, SpawnOptions, Subprocess, SyncSubprocess } from 'bun';
4
+ export type { CLI } from '@stacksjs/clapp';
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 ChangelogOptions extends CliOptions {
68
+ dryRun?: boolean
69
+ from?: string
70
+ to?: string
71
+ version?: string
72
+ }
73
+ export declare interface ProjectsOptions extends CliOptions {
74
+ list?: boolean
75
+ }
76
+ export declare interface PreinstallOptions extends CliOptions {}
77
+ export declare interface PrepublishOptions extends CliOptions {}
78
+ export declare interface PortsOptions extends CliOptions {
79
+ ports?: Partial<Ports>
80
+ }
81
+ export declare interface SaasOptions extends CliOptions {}
82
+ export declare interface SearchCommandOptions extends CliOptions {
83
+ model: string
84
+ settings: boolean
85
+ flush: boolean
86
+ }
87
+ export declare interface ScheduleOptions extends CliOptions {}
88
+ export declare interface TinkerOptions extends CliOptions {
89
+ eval?: string | boolean
90
+ print?: string | boolean
91
+ noBanner?: boolean
92
+ preload?: string
93
+ }
94
+ export declare interface TypesOptions extends CliOptions {}
95
+ declare type ArrayBufferView = NodeJS.TypedArray | DataView;
96
+ export type Readable = | 'pipe'
97
+ | 'inherit'
98
+ | 'ignore'
99
+ | null // equivalent to 'ignore'
100
+ | undefined // to use default
101
+ | BunFile
102
+ | ArrayBufferView
103
+ | number;
104
+ export type Writable = | 'pipe'
105
+ | 'inherit'
106
+ | 'ignore'
107
+ | null // equivalent to 'ignore'
108
+ | undefined // to use default
109
+ | BunFile
110
+ | ArrayBufferView
111
+ | number
112
+ | ReadableStream
113
+ | Blob
114
+ | Response
115
+ | Request;
116
+ export type In = Readable;
117
+ export type Out = Writable;
118
+ /**
119
+ * The file descriptor for the standard input. It may be:
120
+ *
121
+ * - `"ignore"`, `null`, `undefined`: The process will have no standard input
122
+ * - `"pipe"`: The process will have a new {@link FileSink} for standard input
123
+ * - `"inherit"`: The process will inherit the standard input of the current process
124
+ * - `ArrayBufferView`, `Blob`: The process will read from the buffer
125
+ * - `number`: The process will read from the file descriptor
126
+ *
127
+ * @default "ignore"
128
+ */
129
+ export type stdin = 'ignore' | 'inherit' | 'pipe' | ArrayBufferView | number | null | undefined;
130
+ /**
131
+ * The file descriptor for the standard output. It may be:
132
+ *
133
+ * - `"pipe"`, `undefined`: The process will have a {@link ReadableStream} for standard output/error
134
+ * - `"ignore"`, `null`: The process will have no standard output/error
135
+ * - `"inherit"`: The process will inherit the standard output/error of the current process
136
+ * - `ArrayBufferView`: The process write to the preallocated buffer. Not implemented.
137
+ * - `number`: The process will write to the file descriptor
138
+ *
139
+ * @default "pipe"
140
+ */
141
+ export type stdout = 'ignore' | 'inherit' | 'pipe' | ArrayBufferView | number;
142
+ /**
143
+ * The file descriptor for the standard error. It may be:
144
+ *
145
+ * - `"pipe"`, `undefined`: The process will have a {@link ReadableStream} for standard output/error
146
+ * - `"ignore"`, `null`: The process will have no standard output/error
147
+ * - `"inherit"`: The process will inherit the standard output/error of the current process
148
+ * - `ArrayBufferView`: The process write to the preallocated buffer. Not implemented.
149
+ * - `number`: The process will write to the file descriptor
150
+ *
151
+ * @default "inherit" for `spawn`
152
+ * "pipe" for `spawnSync`
153
+ */
154
+ export type stderr = 'ignore' | 'inherit' | 'pipe' | ArrayBufferView | number;
155
+ // type SpinnerOptions = Ora
156
+ export type CliOptionsKeys = keyof CliOptions;
157
+ export type CliConfig = CliOptions;
158
+ // export type { Ora as SpinnerOptions } from 'ora'
159
+ // the `domains` option is only available for the `deploy` command
160
+ // the `count` option is only available for the `seed` command
161
+ export type ActionOption = 'types' | 'domains' | 'count';
162
+ /**
163
+ * The options to pass to the Action.
164
+ */
165
+ export type ActionOptions = {
166
+ types?: boolean
167
+ domains?: boolean
168
+ count?: number
169
+ dryRun?: boolean // used in buddy release
170
+ } & CliOptions &
171
+ DomainsOptions;
172
+ export type BuildOption = | 'components'
173
+ | 'webComponents'
174
+ | 'elements'
175
+ | 'functions'
176
+ | 'docs'
177
+ | 'views'
178
+ | 'stacks'
179
+ | 'all'
180
+ | 'buddy'
181
+ | 'server';
182
+ export type BuildOptions = {
183
+ [key in BuildOption]: boolean
184
+ } & CliOptions;
185
+ export type AddOption = 'table' | 'calendar' | 'all';
186
+ export type AddOptions = {
187
+ [key in AddOption]?: boolean
188
+ } & CliOptions;
189
+ export type CreateStringOption = 'name';
190
+ export type CreateBooleanOption = | 'ui'
191
+ | 'components'
192
+ | 'web-components'
193
+ | 'vue'
194
+ | 'views'
195
+ | 'functions'
196
+ | 'api'
197
+ | 'database'
198
+ | 'minimal';
199
+ export type CreateOptions = {
200
+ [key in CreateBooleanOption]: boolean
201
+ } & {
202
+ [key in CreateStringOption]: string
203
+ } & CliOptions;
204
+ export type DevOption = | 'components'
205
+ | 'docs'
206
+ | 'frontend'
207
+ | 'api'
208
+ | 'desktop'
209
+ | 'native'
210
+ | 'all'
211
+ | 'email'
212
+ | 'system-tray'
213
+ | 'interactive'
214
+ | 'verbose';
215
+ export type DevOptions = {
216
+ [key in DevOption]: boolean
217
+ } & CliOptions;
218
+ export type GeneratorOption = | 'types'
219
+ | 'entries'
220
+ | 'webTypes'
221
+ | 'customData'
222
+ | 'ideHelpers'
223
+ | 'componentMeta'
224
+ | 'coreSymlink'
225
+ | 'openApiSpec'
226
+ | 'pantryConfig'
227
+ | 'openapi'
228
+ | 'modelFiles';
229
+ export type GeneratorOptions = {
230
+ [key in GeneratorOption]?: boolean
231
+ } & CliOptions;
232
+ export type LintOption = 'fix';
233
+ export type LintOptions = {
234
+ [key in LintOption]: boolean
235
+ } & CliOptions;
236
+ export type MakeStringOption = 'name' | 'chat' | 'sms' | 'env';
237
+ export type MakeBooleanOption = | 'component'
238
+ | 'page'
239
+ | 'function'
240
+ | 'language'
241
+ | 'database'
242
+ | 'migration'
243
+ | 'model'
244
+ | 'notification'
245
+ | 'stack'
246
+ | 'middleware'
247
+ | 'dryRun'
248
+ | 'withValidation'
249
+ | 'withAuth';
250
+ export type MakeOptions = {
251
+ [key in MakeBooleanOption]: boolean
252
+ } & {
253
+ [key in MakeStringOption]: string
254
+ } & CliOptions;
255
+ export type UpgradeBoolean = 'framework' | 'dependencies' | 'bun' | 'shell' | 'binary' | 'all' | 'force' | 'canary' | 'stable' | 'noPostinstall' | 'postinstall';
256
+ export type UpgradeString = 'version' | 'from';
257
+ export type UpgradeOptions = {
258
+ [key in UpgradeBoolean]?: boolean
259
+ } & {
260
+ [key in UpgradeString]?: string
261
+ } & CliOptions;
262
+ export type ExamplesString = 'version';
263
+ export type ExamplesBoolean = 'components' | 'vue' | 'webComponents' | 'elements' | 'all' | 'force';
264
+ export type ExamplesOption = ExamplesString & ExamplesBoolean;
265
+ export type ExamplesOptions = {
266
+ [key in ExamplesString]: string
267
+ } & {
268
+ [key in ExamplesBoolean]: boolean
269
+ } & CliOptions;
270
+ export type TestingOptions = CliOptions & {
271
+ ui?: boolean
272
+ feature?: boolean
273
+ unit?: boolean
274
+ }
275
+ export type DomainsOptions = CliOptions & {
276
+ domain?: string
277
+ yes?: boolean
278
+ years?: number
279
+ privacy?: boolean
280
+ autoRenew?: boolean
281
+ registrantFirstName?: string
282
+ registrantLastName?: string
283
+ registrantOrganization?: string
284
+ registrantAddress?: string
285
+ registrantCity?: string
286
+ registrantState?: string
287
+ registrantCountry?: string
288
+ registrantZip?: string
289
+ registrantPhone?: string
290
+ registrantEmail?: string
291
+ adminFirstName?: string
292
+ adminLastName?: string
293
+ adminOrganization?: string
294
+ adminAddress?: string
295
+ adminCity?: string
296
+ adminState?: string
297
+ adminCountry?: string
298
+ adminZip?: string
299
+ adminPhone?: string
300
+ adminEmail?: string
301
+ techFirstName?: string
302
+ techLastName?: string
303
+ techOrganization?: string
304
+ techAddress?: string
305
+ techCity?: string
306
+ techState?: string
307
+ techCountry?: string
308
+ techZip?: string
309
+ techPhone?: string
310
+ techEmail?: string
311
+ privacyAdmin?: boolean
312
+ privacyTech?: boolean
313
+ privacyRegistrant?: boolean
314
+ contactType?: string
315
+ }
316
+ export type LibEntryType = 'web-components' | 'functions' | 'all';