forked from proofsh/proofkit
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathenv.d.ts
More file actions
224 lines (191 loc) Β· 17.8 KB
/
env.d.ts
File metadata and controls
224 lines (191 loc) Β· 17.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
// π π π π π π π π π π π π π π π π π π π π π π
// π THIS IS AN AUTOGENERATED FILE - DO NOT EDIT DIRECTLY π
// π π π π π π π π π π π π π π π π π π π π π π
// @ts-nocheck
/* eslint-disable */
export type CoercedEnvSchema = {
/**
* **APP_ENV**
* Selects which env overlay varlock should treat as current.
* Keep this non-secret. `test` matches the current Doppler base config.
* 
*/
APP_ENV: "dev" | "test" | "prod";
/**
* **OP_TOKEN** π _sensitive_
* 1Password service account token used by the plugin.
* Leave as a normal env var on your machine or CI, not an `op://` ref.
* 
*/
OP_TOKEN?: string;
/**
* **FM_SERVER**
* Canonical FileMaker server URL used by fmdapi, typegen, better-auth tests,
* generated template defaults, and several local scripts.
* Must include protocol, usually `https://...`.
* 
*/
FM_SERVER: string;
/**
* **FM_DATABASE**
* Canonical FileMaker database name used across fmdapi, fmodata, typegen,
* CLI templates, and integration tests. Usually ends in `.fmp12`.
* 
*/
FM_DATABASE: string;
/**
* **FM_USERNAME**
* FileMaker username for username/password auth flows.
* Used when `OTTO_API_KEY` is not supplied or when scripts require direct auth.
* 
*/
FM_USERNAME: string;
/**
* **FM_PASSWORD** π _sensitive_
* FileMaker password paired with `FM_USERNAME`.
* 
*/
FM_PASSWORD: string;
/**
* **OTTO_API_KEY** π _sensitive_
* Otto/FileMaker Data API key used by fmdapi, fmodata, better-auth migration
* tests, and generated template defaults.
* Common values start with `dk_` or `KEY_`.
* 
*/
OTTO_API_KEY: string;
/**
* **FMODATA_SERVER_URL**
* Dedicated fmodata server URL for package-level E2E and capture scripts.
* If it is the same backend as `FM_SERVER`, point both vars at the same secret.
* 
*/
FMODATA_SERVER_URL: string;
/**
* **FMODATA_API_KEY** π _sensitive_
* Dedicated fmodata API key for package-level OData tests and scripts.
* If it matches `OTTO_API_KEY`, reuse the same `op://...` reference.
* 
*/
FMODATA_API_KEY: string;
/**
* **FMODATA_USERNAME**
* Dedicated fmodata username for scripts that use username/password auth.
* Optional when `FMODATA_API_KEY` is available.
* 
*/
FMODATA_USERNAME: string;
/**
* **FMODATA_PASSWORD** π _sensitive_
* Dedicated fmodata password for scripts that use username/password auth.
* Optional when `FMODATA_API_KEY` is available.
* 
*/
FMODATA_PASSWORD: string;
/**
* **FMODATA_DATABASE**
* Dedicated fmodata database name for E2E and capture scripts.
* If it matches `FM_DATABASE`, reuse the same `op://...` reference.
* 
*/
FMODATA_DATABASE: string;
/**
* **OTTO_SERVER_URL**
* Server URL for CLI smoke tests that generate a browser app non-interactively.
* This is separate from `FM_SERVER`; the smoke test expects Otto admin endpoints.
* 
*/
OTTO_SERVER_URL: string;
/**
* **OTTO_ADMIN_API_KEY** π _sensitive_
* Admin API key used by the CLI smoke test during project generation.
* 
*/
OTTO_ADMIN_API_KEY?: string;
/**
* **FM_DATA_API_KEY** π _sensitive_
* Data API key passed into generated smoke-test projects.
* This may be the same underlying secret as `OTTO_API_KEY`.
* 
*/
FM_DATA_API_KEY?: string;
/**
* **FM_FILE_NAME**
* FileMaker file name used by the CLI smoke test.
* Often the same value as `FM_DATABASE`, but the test treats it as a separate
* input, so keep the key explicit.
* 
*/
FM_FILE_NAME?: string;
/**
* **FM_LAYOUT_NAME**
* Layout name used by the CLI smoke test.
* 
*/
FM_LAYOUT_NAME?: string;
/**
* **DIFFERENT_FM_SERVER**
* Alternate FileMaker server used by typegen tests that verify env name mapping.
* If you do not run those tests against a second backend, reuse the primary refs.
* 
*/
DIFFERENT_FM_SERVER: string;
/**
* **DIFFERENT_FM_DATABASE**
* Alternate FileMaker database for typegen env-name tests.
* 
*/
DIFFERENT_FM_DATABASE: string;
/**
* **DIFFERENT_FM_USERNAME**
* Alternate FileMaker username for typegen env-name tests.
* 
*/
DIFFERENT_FM_USERNAME: string;
/**
* **DIFFERENT_FM_PASSWORD** π _sensitive_
* Alternate FileMaker password for typegen env-name tests.
* 
*/
DIFFERENT_FM_PASSWORD: string;
/**
* **DIFFERENT_OTTO_API_KEY** π _sensitive_
* Alternate Otto API key for typegen env-name tests.
* 
*/
DIFFERENT_OTTO_API_KEY: string;
/**
* **FM_MCP_BASE_URL**
* Base URL of the local FM MCP proxy used by CLI and typegen helper flows.
* Default in code is `http://127.0.0.1:1365`, so only set this if you override it.
* 
*/
FM_MCP_BASE_URL: string;
/**
* **PROOFKIT_ALLOW_INSECURE_TLS**
* Set to `1` only for local/dev cases where TLS verification must be disabled.
* Keep unset in CI and prod.
* 
*/
PROOFKIT_ALLOW_INSECURE_TLS: 0 | 1;
};
declare module 'varlock/env' {
export interface TypedEnvSchema extends Readonly<CoercedEnvSchema> {}
export interface PublicTypedEnvSchema extends Readonly<Pick<CoercedEnvSchema, 'APP_ENV' | 'FM_SERVER' | 'FM_DATABASE' | 'FM_USERNAME' | 'FMODATA_SERVER_URL' | 'FMODATA_USERNAME' | 'FMODATA_DATABASE' | 'OTTO_SERVER_URL' | 'FM_FILE_NAME' | 'FM_LAYOUT_NAME' | 'DIFFERENT_FM_SERVER' | 'DIFFERENT_FM_DATABASE' | 'DIFFERENT_FM_USERNAME' | 'FM_MCP_BASE_URL' | 'PROOFKIT_ALLOW_INSECURE_TLS'>> {}
}
export type EnvSchemaAsStrings = {
[Property in keyof CoercedEnvSchema]:
CoercedEnvSchema[Property] extends string ? CoercedEnvSchema[Property]
: (CoercedEnvSchema[Property] extends boolean ? ('true' | 'false') : string)
};
declare global {
// add types for global import.meta.env
interface ImportMetaEnv extends EnvSchemaAsStrings {}
interface ImportMeta {
readonly env: ImportMetaEnv;
}
// add types for global process.env
namespace NodeJS {
interface ProcessEnv extends EnvSchemaAsStrings {}
}
}