@venturekit/core 0.0.0-dev.20260504234818 → 0.0.0-dev.20260505014642

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.
@@ -1 +1 @@
1
- {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,eAAe,CAAC;IACxB,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC;IACjD,GAAG,EAAE,YAAY,CAAC;IAClB,aAAa,EAAE,sBAAsB,CAAC;IACtC,SAAS,EAAE,kBAAkB,CAAC;CAC/B;AA6BD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,WAAW,EAAE,YA2DzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,YA2DzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,YA2D1B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,YA4D3B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,YA4D1B,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAetD;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAI1D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,UAAU,EAAE;IAClD,aAAa,EAAE,QAAQ,GAAG,SAAS,CAAC;IACpC,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAaA,CAAC"}
1
+ {"version":3,"file":"presets.d.ts","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,eAAe,CAAC;IACxB,GAAG,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC;IACjD,GAAG,EAAE,YAAY,CAAC;IAClB,aAAa,EAAE,sBAAsB,CAAC;IACtC,SAAS,EAAE,kBAAkB,CAAC;CAC/B;AA6BD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,eAAO,MAAM,WAAW,EAAE,YAkEzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,YAmEzB,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,YAmE1B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,YAoE3B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,YAqE1B,CAAC;AAEF;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAetD;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAI1D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,UAAU,EAAE;IAClD,aAAa,EAAE,QAAQ,GAAG,SAAS,CAAC;IACpC,kBAAkB,EAAE,OAAO,CAAC;CAC7B,CAaA,CAAC"}
package/dist/presets.js CHANGED
@@ -54,6 +54,11 @@ const DEFAULT_SECURITY_GROUP = {
54
54
  * - CloudWatch alarms/detailed metrics
55
55
  */
56
56
  export const PRESET_FREE = {
57
+ // --- NAT provisioning ---
58
+ // Free preset stays truly free: no VPC, no NAT, no migration runner.
59
+ // DynamoDB is the only data-plane, which reaches AWS via the gateway
60
+ // endpoint (no NAT required). natType: 'none' makes the intent
61
+ // explicit and short-circuits the migration-runner gate in stack.ts.
57
62
  lambda: {
58
63
  memoryMb: 128,
59
64
  timeoutSec: 10,
@@ -76,6 +81,8 @@ export const PRESET_FREE = {
76
81
  vpc: {
77
82
  maxAzs: 2,
78
83
  natGateways: 0,
84
+ natType: 'none',
85
+ natInstanceType: undefined,
79
86
  cidr: '10.0.0.0/16',
80
87
  flowLogsEnabled: false,
81
88
  flowLogsRetentionDays: 1,
@@ -120,6 +127,12 @@ export const PRESET_FREE = {
120
127
  * Cost: ~$5-15/month
121
128
  */
122
129
  export const PRESET_NANO = {
130
+ // --- NAT provisioning ---
131
+ // nano runs a single `t4g.nano` fck-nat instance (~$3.70/mo) instead
132
+ // of a NAT Gateway (~$33/mo). Trade-off: 1-2 min data-plane recovery
133
+ // on instance failure vs. NAT GW's sub-second managed failover —
134
+ // acceptable for the dev/preview use case nano is sized for. This lets
135
+ // `vk deploy` auto-run migrations on every deploy, same as prod presets.
123
136
  lambda: {
124
137
  memoryMb: 128,
125
138
  timeoutSec: 10,
@@ -141,7 +154,9 @@ export const PRESET_NANO = {
141
154
  },
142
155
  vpc: {
143
156
  maxAzs: 2,
144
- natGateways: 0,
157
+ natGateways: 1,
158
+ natType: 'instance',
159
+ natInstanceType: 't4g.nano',
145
160
  cidr: '10.0.0.0/16',
146
161
  flowLogsEnabled: false,
147
162
  flowLogsRetentionDays: 7,
@@ -186,6 +201,12 @@ export const PRESET_NANO = {
186
201
  * Cost: ~$30-80/month
187
202
  */
188
203
  export const PRESET_MICRO = {
204
+ // --- NAT provisioning ---
205
+ // micro uses `t4g.nano` fck-nat instead of NAT GW. On the low-traffic
206
+ // workloads micro is sized for (`~$30-80/mo` total budget) this saves
207
+ // ~$29/mo vs. a managed NAT GW — roughly a third of the monthly bill.
208
+ // Single-AZ NAT is deliberate (matches existing natGateways: 1), so
209
+ // traffic from the non-NAT AZ pays cross-AZ data transfer.
189
210
  lambda: {
190
211
  memoryMb: 256,
191
212
  timeoutSec: 10,
@@ -208,6 +229,8 @@ export const PRESET_MICRO = {
208
229
  vpc: {
209
230
  maxAzs: 2,
210
231
  natGateways: 1,
232
+ natType: 'instance',
233
+ natInstanceType: 't4g.nano',
211
234
  cidr: '10.0.0.0/16',
212
235
  flowLogsEnabled: false,
213
236
  flowLogsRetentionDays: 14,
@@ -252,6 +275,12 @@ export const PRESET_MICRO = {
252
275
  * Cost: ~$100-300/month
253
276
  */
254
277
  export const PRESET_MEDIUM = {
278
+ // --- NAT provisioning ---
279
+ // medium uses `t4g.medium` fck-nat (~$24/mo per NAT). Enough headroom
280
+ // for the "moderate traffic" profile medium targets and still cheaper
281
+ // than NAT GW even before the $0.045/GB data-processing fee. Operators
282
+ // expecting sustained > 1 Gbps egress should override to either a
283
+ // `c6gn.large` instance or `natType: 'gateway'`.
255
284
  lambda: {
256
285
  memoryMb: 512,
257
286
  timeoutSec: 15,
@@ -274,6 +303,8 @@ export const PRESET_MEDIUM = {
274
303
  vpc: {
275
304
  maxAzs: 2,
276
305
  natGateways: 1,
306
+ natType: 'instance',
307
+ natInstanceType: 't4g.medium',
277
308
  cidr: '10.0.0.0/16',
278
309
  flowLogsEnabled: true,
279
310
  flowLogsRetentionDays: 30,
@@ -319,6 +350,13 @@ export const PRESET_MEDIUM = {
319
350
  * Cost: ~$500+/month
320
351
  */
321
352
  export const PRESET_LARGE = {
353
+ // --- NAT provisioning ---
354
+ // large defaults to AWS-managed NAT Gateway. For a customer-facing API
355
+ // at this scale, the SLA + sub-second intra-AZ failover + zero ops
356
+ // surface typically outweighs the ~$65/mo savings a fck-nat instance
357
+ // fleet would offer. Teams with predictable high-egress workloads
358
+ // (> 1 TB/mo) should consider `natType: 'instance'` with
359
+ // `natInstanceType: 'c6gn.large'` to skip NAT GW's $0.045/GB fee.
322
360
  lambda: {
323
361
  memoryMb: 1024,
324
362
  timeoutSec: 30,
@@ -341,6 +379,8 @@ export const PRESET_LARGE = {
341
379
  vpc: {
342
380
  maxAzs: 3,
343
381
  natGateways: 2,
382
+ natType: 'gateway',
383
+ natInstanceType: undefined,
344
384
  cidr: '10.0.0.0/16',
345
385
  flowLogsEnabled: true,
346
386
  flowLogsRetentionDays: 90,
@@ -1 +1 @@
1
- {"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"presets.js","sourceRoot":"","sources":["../src/presets.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export type { SecurityConfig, OAuthScope, AppClient } from './security.js';
8
8
  export type { EnvConfig, EnvConfigInput, Environment, Preset, DataSafety } from './env.js';
9
9
  export type { LambdaEnvConfig, LambdaEnvConfigInput, LambdaRuntime, LambdaArchitecture, LambdaIamConfig, IamPolicyStatement, } from './lambda.js';
10
10
  export type { ApiEnvConfig, ApiEnvConfigInput, CorsConfig, CustomDomainConfig } from './api.js';
11
- export type { VpcEnvConfig, VpcEnvConfigInput, SubnetConfig, SecurityGroupRule, } from './vpc.js';
11
+ export type { VpcEnvConfig, VpcEnvConfigInput, SubnetConfig, SecurityGroupRule, NatType, } from './vpc.js';
12
12
  export type { ObservabilityEnvConfig, ObservabilityEnvConfigInput, LogGroupConfig, MetricsConfig, AlarmConfig, TracingConfig, } from './observability.js';
13
13
  export type { WebSocketEnvConfig, WebSocketEnvConfigInput } from './websocket.js';
14
14
  export type { ResolvedConfig } from './resolved.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG3E,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3F,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGhG,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,GAClB,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAGlF,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,YAAY,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EAEb,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,GACf,MAAM,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,YAAY,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAG5C,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAG3E,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAG3F,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,eAAe,EACf,kBAAkB,GACnB,MAAM,aAAa,CAAC;AAGrB,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAGhG,YAAY,EACV,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,iBAAiB,EACjB,OAAO,GACR,MAAM,UAAU,CAAC;AAGlB,YAAY,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,cAAc,EACd,aAAa,EACb,WAAW,EACX,aAAa,GACd,MAAM,oBAAoB,CAAC;AAG5B,YAAY,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAGlF,YAAY,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAGpD,YAAY,EACV,YAAY,EACZ,cAAc,EACd,aAAa,EACb,UAAU,EACV,WAAW,EACX,WAAW,EACX,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EAEb,gBAAgB,EAChB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,cAAc,GACf,MAAM,cAAc,CAAC"}
@@ -26,6 +26,27 @@ export interface SecurityGroupRule {
26
26
  /** Description */
27
27
  description?: string;
28
28
  }
29
+ /**
30
+ * NAT provider kind.
31
+ *
32
+ * - `'gateway'` — AWS-managed NAT Gateway. ~$33/mo per AZ + $0.045/GB
33
+ * processed. Zero ops, sub-second intra-AZ failover. Pick for strict
34
+ * SLAs, sustained egress > 5 Gbps, or compliance regimes that mandate
35
+ * managed services.
36
+ * - `'instance'` — EC2 NAT instance running `fck-nat` (the community
37
+ * maintained AL2023 AMI). ~$3–25/mo per AZ, no per-GB data fee. Failover
38
+ * is handled by CDK's auto-recovery / instance replacement (1–2 min).
39
+ * Good default for dev/preview and small-to-medium prod. Defeats the
40
+ * NAT GW's per-GB charge on heavy-egress workloads.
41
+ * - `'none'` — no outbound egress from private subnets at all. Use when
42
+ * the workload is fully VPC-internal (e.g. DynamoDB-only, no
43
+ * migrations, no third-party API calls). `natGateways` is ignored.
44
+ *
45
+ * Changing `natType` on an existing deployment causes CloudFormation to
46
+ * replace the NAT resource (brief data-plane outage during deploy).
47
+ * The VPC itself is not replaced.
48
+ */
49
+ export type NatType = 'gateway' | 'instance' | 'none';
29
50
  /**
30
51
  * VPC configuration
31
52
  *
@@ -34,8 +55,33 @@ export interface SecurityGroupRule {
34
55
  export interface VpcEnvConfig {
35
56
  /** Number of availability zones (1-3) */
36
57
  maxAzs: number;
37
- /** Number of NAT gateways (0 = no private subnet internet access) */
58
+ /**
59
+ * Number of NAT providers (one per AZ, up to `maxAzs`). Applies to both
60
+ * `natType: 'gateway'` and `natType: 'instance'`. Ignored when
61
+ * `natType: 'none'`.
62
+ *
63
+ * Cross-AZ routing: if `natGateways < maxAzs`, private subnets in AZs
64
+ * without a local NAT route to a NAT in another AZ, which incurs
65
+ * cross-AZ data transfer but saves one provider's worth of cost.
66
+ */
38
67
  natGateways: number;
68
+ /**
69
+ * NAT provider kind. See the {@link NatType} docs for the full cost /
70
+ * reliability trade-off. Controls what kind of resource CDK provisions
71
+ * for outbound egress from private subnets.
72
+ */
73
+ natType: NatType;
74
+ /**
75
+ * EC2 instance type used when `natType: 'instance'`. Common choices:
76
+ * - `'t4g.nano'` (~$3/mo, 0.064 Gbps baseline, 5 Gbps burst)
77
+ * - `'t4g.medium'` (~$24/mo, ~0.5 Gbps sustained, 5 Gbps burst)
78
+ * - `'c6gn.large'` (~$63/mo, 12 Gbps sustained — beats NAT GW on cost
79
+ * above ~1 TB/mo egress)
80
+ *
81
+ * Ignored when `natType !== 'instance'`. May be undefined — the stack
82
+ * falls back to `'t4g.nano'`.
83
+ */
84
+ natInstanceType: string | undefined;
39
85
  /** CIDR block for the VPC */
40
86
  cidr: string;
41
87
  /** Enable VPC flow logs for network monitoring */
@@ -1 +1 @@
1
- {"version":3,"file":"vpc.d.ts","sourceRoot":"","sources":["../../src/types/vpc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;IAEf,qEAAqE;IACrE,WAAW,EAAE,MAAM,CAAC;IAEpB,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IAEb,kDAAkD;IAClD,eAAe,EAAE,OAAO,CAAC;IAEzB,kCAAkC;IAClC,qBAAqB,EAAE,MAAM,CAAC;IAE9B,kCAAkC;IAClC,aAAa,EAAE,YAAY,CAAC;IAE5B,qDAAqD;IACrD,cAAc,EAAE,YAAY,CAAC;IAE7B,2DAA2D;IAC3D,eAAe,EAAE,YAAY,GAAG,SAAS,CAAC;IAE1C,iEAAiE;IACjE,kBAAkB,EAAE,OAAO,CAAC;IAE5B,yDAAyD;IACzD,0BAA0B,EAAE,iBAAiB,EAAE,CAAC;IAEhD,wDAAwD;IACxD,yBAAyB,EAAE,iBAAiB,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,GAAG,gBAAgB,GAAG,iBAAiB,CAAC,CAAC,GAAG;IACpH,aAAa,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACzC,CAAC"}
1
+ {"version":3,"file":"vpc.d.ts","sourceRoot":"","sources":["../../src/types/vpc.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;AAEtD;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC3B,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;IAEf;;;;;;;;OAQG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;;;;;;OASG;IACH,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IAEpC,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IAEb,kDAAkD;IAClD,eAAe,EAAE,OAAO,CAAC;IAEzB,kCAAkC;IAClC,qBAAqB,EAAE,MAAM,CAAC;IAE9B,kCAAkC;IAClC,aAAa,EAAE,YAAY,CAAC;IAE5B,qDAAqD;IACrD,cAAc,EAAE,YAAY,CAAC;IAE7B,2DAA2D;IAC3D,eAAe,EAAE,YAAY,GAAG,SAAS,CAAC;IAE1C,iEAAiE;IACjE,kBAAkB,EAAE,OAAO,CAAC;IAE5B,yDAAyD;IACzD,0BAA0B,EAAE,iBAAiB,EAAE,CAAC;IAEhD,wDAAwD;IACxD,yBAAyB,EAAE,iBAAiB,EAAE,CAAC;CAChD;AAED;;GAEG;AACH,MAAM,MAAM,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,eAAe,GAAG,gBAAgB,GAAG,iBAAiB,CAAC,CAAC,GAAG;IACpH,aAAa,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;IACvC,eAAe,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACzC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@venturekit/core",
3
- "version": "0.0.0-dev.20260504234818",
3
+ "version": "0.0.0-dev.20260505014642",
4
4
  "description": "VentureKit core types, presets, and configuration resolution.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",