@vaiftech/client 1.0.4 → 1.0.6

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.
package/dist/index.d.mts CHANGED
@@ -2628,6 +2628,12 @@ interface Environment {
2628
2628
  id: string;
2629
2629
  projectId: string;
2630
2630
  name: string;
2631
+ type?: string;
2632
+ url?: string;
2633
+ customDomain?: string | null;
2634
+ customDomainVerified?: boolean;
2635
+ isActive?: boolean;
2636
+ config?: Record<string, unknown>;
2631
2637
  createdAt: string;
2632
2638
  updatedAt: string;
2633
2639
  }
@@ -2949,6 +2955,7 @@ interface PreviewInput {
2949
2955
  projectId: string;
2950
2956
  envId?: string;
2951
2957
  definition: SchemaDefinition;
2958
+ allowDestructive?: boolean;
2952
2959
  }
2953
2960
  /**
2954
2961
  * Response from schema preview
@@ -2968,6 +2975,7 @@ interface ApplyInput {
2968
2975
  envId?: string;
2969
2976
  definition: SchemaDefinition;
2970
2977
  migrationName?: string;
2978
+ allowDestructive?: boolean;
2971
2979
  }
2972
2980
  /**
2973
2981
  * Migration result from apply
@@ -4103,6 +4111,7 @@ interface CheckEntitlementResponse {
4103
4111
  interface CheckoutInput {
4104
4112
  orgId: string;
4105
4113
  plan: "starter" | "pro" | "agency" | "studio_plus";
4114
+ interval?: "monthly" | "yearly";
4106
4115
  successUrl?: string;
4107
4116
  cancelUrl?: string;
4108
4117
  }
@@ -4112,6 +4121,19 @@ interface CheckoutInput {
4112
4121
  interface CheckoutResponse {
4113
4122
  url: string;
4114
4123
  }
4124
+ /**
4125
+ * Checkout session verification response
4126
+ */
4127
+ interface CheckoutVerifyResponse {
4128
+ ok: boolean;
4129
+ status: "complete" | "expired" | "open";
4130
+ paymentStatus: "paid" | "unpaid" | "no_payment_required";
4131
+ plan: string;
4132
+ interval: string;
4133
+ subscriptionId: string | null;
4134
+ subscriptionStatus: string | null;
4135
+ currentPeriodEnd: string | null;
4136
+ }
4115
4137
  /**
4116
4138
  * Portal input
4117
4139
  */
@@ -4274,6 +4296,10 @@ interface BillingModule {
4274
4296
  * Create a Stripe checkout session for upgrading
4275
4297
  */
4276
4298
  createCheckout(input: CheckoutInput): Promise<CheckoutResponse>;
4299
+ /**
4300
+ * Verify a checkout session after redirect (call this on billing page load with session_id param)
4301
+ */
4302
+ verifyCheckoutSession(sessionId: string): Promise<CheckoutVerifyResponse>;
4277
4303
  /**
4278
4304
  * Open Stripe billing portal for managing subscription
4279
4305
  */
@@ -4669,6 +4695,189 @@ interface DLQListOptions {
4669
4695
  limit?: number;
4670
4696
  offset?: number;
4671
4697
  }
4698
+ /**
4699
+ * Feature flag
4700
+ */
4701
+ interface FeatureFlag$1 {
4702
+ id: string;
4703
+ key: string;
4704
+ enabled: boolean;
4705
+ createdAt: string;
4706
+ updatedAt: string;
4707
+ }
4708
+ /**
4709
+ * Admin user (super admin)
4710
+ */
4711
+ interface SuperAdmin {
4712
+ id: string;
4713
+ userId: string;
4714
+ role: string;
4715
+ permissions: string[];
4716
+ notes: string | null;
4717
+ isActive: boolean;
4718
+ lastAccessAt: string | null;
4719
+ createdAt: string;
4720
+ updatedAt: string;
4721
+ email?: string;
4722
+ name?: string;
4723
+ }
4724
+ /**
4725
+ * System setting
4726
+ */
4727
+ interface SystemSetting {
4728
+ key: string;
4729
+ value: unknown;
4730
+ category: string;
4731
+ description: string | null;
4732
+ isSecret: boolean;
4733
+ updatedAt: string | null;
4734
+ }
4735
+ /**
4736
+ * AI Model for admin management
4737
+ */
4738
+ interface AdminAIModel {
4739
+ id: string;
4740
+ provider: "openai" | "anthropic";
4741
+ modelId: string;
4742
+ displayName: string;
4743
+ tier: "free" | "paid" | "enterprise";
4744
+ creditMultiplier: string;
4745
+ maxInputTokens: number;
4746
+ maxOutputTokens: number;
4747
+ supportsStreaming: boolean;
4748
+ supportsVision: boolean;
4749
+ supportsToolUse: boolean;
4750
+ isEnabled: boolean;
4751
+ copilotName: string | null;
4752
+ copilotTagline: string | null;
4753
+ disabledMessage: string | null;
4754
+ createdAt: string;
4755
+ updatedAt: string;
4756
+ }
4757
+ /**
4758
+ * Create AI model input
4759
+ */
4760
+ interface CreateAIModelInput {
4761
+ provider: "openai" | "anthropic";
4762
+ modelId: string;
4763
+ displayName: string;
4764
+ tier?: "free" | "paid" | "enterprise";
4765
+ creditMultiplier?: number;
4766
+ maxInputTokens?: number;
4767
+ maxOutputTokens?: number;
4768
+ supportsStreaming?: boolean;
4769
+ supportsVision?: boolean;
4770
+ supportsToolUse?: boolean;
4771
+ isEnabled?: boolean;
4772
+ copilotName?: string;
4773
+ copilotTagline?: string;
4774
+ }
4775
+ /**
4776
+ * Update AI model input
4777
+ */
4778
+ interface UpdateAIModelInput {
4779
+ displayName?: string;
4780
+ tier?: "free" | "paid" | "enterprise";
4781
+ creditMultiplier?: number;
4782
+ isEnabled?: boolean;
4783
+ maxInputTokens?: number;
4784
+ maxOutputTokens?: number;
4785
+ supportsStreaming?: boolean;
4786
+ supportsVision?: boolean;
4787
+ supportsToolUse?: boolean;
4788
+ copilotName?: string;
4789
+ copilotTagline?: string;
4790
+ disabledMessage?: string;
4791
+ }
4792
+ /**
4793
+ * AI Workspace Session
4794
+ */
4795
+ interface AdminAISession {
4796
+ id: string;
4797
+ userId: string;
4798
+ projectId: string | null;
4799
+ title: string | null;
4800
+ sessionType: string | null;
4801
+ status: string;
4802
+ primaryModelId: string | null;
4803
+ totalInputTokens: number | null;
4804
+ totalOutputTokens: number | null;
4805
+ totalCreditsUsed: string | null;
4806
+ createdAt: string;
4807
+ updatedAt: string;
4808
+ userEmail: string | null;
4809
+ userName: string | null;
4810
+ projectName: string | null;
4811
+ }
4812
+ /**
4813
+ * AI Workspace Turn
4814
+ */
4815
+ interface AdminAITurn {
4816
+ id: string;
4817
+ sessionId: string;
4818
+ turnIndex: number;
4819
+ turnType: string;
4820
+ inputContent: string | null;
4821
+ outputContent: string | null;
4822
+ inputTokens: number | null;
4823
+ outputTokens: number | null;
4824
+ modelUsed: string | null;
4825
+ status: string;
4826
+ createdAt: string;
4827
+ }
4828
+ /**
4829
+ * Generated Backend
4830
+ */
4831
+ interface AdminGeneratedBackend {
4832
+ id: string;
4833
+ userId: string;
4834
+ projectId: string | null;
4835
+ sessionId: string | null;
4836
+ name: string;
4837
+ description: string | null;
4838
+ status: string;
4839
+ generationTypes: string[] | null;
4840
+ framework: string | null;
4841
+ language: string | null;
4842
+ fileCount: number | null;
4843
+ totalLines: number | null;
4844
+ files: Record<string, string> | null;
4845
+ createdAt: string;
4846
+ userEmail: string | null;
4847
+ userName: string | null;
4848
+ }
4849
+ /**
4850
+ * Prompt Template
4851
+ */
4852
+ interface AdminPromptTemplate {
4853
+ id: string;
4854
+ name: string;
4855
+ slug: string;
4856
+ category: string;
4857
+ description: string | null;
4858
+ systemPrompt: string;
4859
+ userPromptTemplate: string | null;
4860
+ variables: string[];
4861
+ isSystem: boolean;
4862
+ isEnabled: boolean;
4863
+ createdAt: string;
4864
+ updatedAt: string;
4865
+ }
4866
+ /**
4867
+ * Context Snapshot
4868
+ */
4869
+ interface AdminContextSnapshot {
4870
+ id: string;
4871
+ projectId: string;
4872
+ totalTokens: number | null;
4873
+ schemaTokens: number | null;
4874
+ storageTokens: number | null;
4875
+ functionsTokens: number | null;
4876
+ isValid: boolean;
4877
+ createdAt: string;
4878
+ expiresAt: string | null;
4879
+ projectName: string | null;
4880
+ }
4672
4881
  /**
4673
4882
  * Admin module interface
4674
4883
  */
@@ -4767,6 +4976,140 @@ interface AdminModule {
4767
4976
  ok: boolean;
4768
4977
  messageId: string;
4769
4978
  }>;
4979
+ listFeatureFlags(): Promise<FeatureFlag$1[]>;
4980
+ createFeatureFlag(key: string, enabled: boolean): Promise<{
4981
+ ok: boolean;
4982
+ }>;
4983
+ updateFeatureFlag(key: string, enabled: boolean): Promise<{
4984
+ ok: boolean;
4985
+ }>;
4986
+ deleteFeatureFlag(key: string): Promise<{
4987
+ ok: boolean;
4988
+ key: string;
4989
+ }>;
4990
+ listAdmins(): Promise<SuperAdmin[]>;
4991
+ addAdmin(userId: string, role?: string, notes?: string): Promise<{
4992
+ ok: boolean;
4993
+ admin: SuperAdmin;
4994
+ }>;
4995
+ updateAdmin(adminId: string, data: {
4996
+ role?: string;
4997
+ permissions?: string[];
4998
+ isActive?: boolean;
4999
+ notes?: string;
5000
+ }): Promise<{
5001
+ ok: boolean;
5002
+ }>;
5003
+ removeAdmin(adminId: string): Promise<{
5004
+ ok: boolean;
5005
+ }>;
5006
+ getSettings(category?: string): Promise<{
5007
+ settings: Record<string, SystemSetting[]>;
5008
+ total: number;
5009
+ }>;
5010
+ updateSetting(key: string, value: unknown): Promise<{
5011
+ ok: boolean;
5012
+ key: string;
5013
+ }>;
5014
+ listAIModels(): Promise<{
5015
+ ok: boolean;
5016
+ models: AdminAIModel[];
5017
+ }>;
5018
+ getAIModel(modelId: string): Promise<{
5019
+ ok: boolean;
5020
+ model: AdminAIModel;
5021
+ }>;
5022
+ createAIModel(data: CreateAIModelInput): Promise<{
5023
+ ok: boolean;
5024
+ model: AdminAIModel;
5025
+ }>;
5026
+ updateAIModel(modelId: string, data: UpdateAIModelInput): Promise<{
5027
+ ok: boolean;
5028
+ model: AdminAIModel;
5029
+ }>;
5030
+ deleteAIModel(modelId: string): Promise<{
5031
+ ok: boolean;
5032
+ }>;
5033
+ toggleAIModel(modelId: string, enabled?: boolean, disabledMessage?: string): Promise<{
5034
+ ok: boolean;
5035
+ model: AdminAIModel;
5036
+ }>;
5037
+ listAISessions(options?: AdminListOptions): Promise<{
5038
+ ok: boolean;
5039
+ sessions: AdminAISession[];
5040
+ total: number;
5041
+ }>;
5042
+ getAISession(sessionId: string): Promise<{
5043
+ ok: boolean;
5044
+ session: AdminAISession;
5045
+ turns: AdminAITurn[];
5046
+ }>;
5047
+ deleteAISession(sessionId: string): Promise<{
5048
+ ok: boolean;
5049
+ }>;
5050
+ listGeneratedBackends(options?: AdminListOptions & {
5051
+ status?: string;
5052
+ }): Promise<{
5053
+ ok: boolean;
5054
+ backends: AdminGeneratedBackend[];
5055
+ total: number;
5056
+ }>;
5057
+ getGeneratedBackend(backendId: string): Promise<{
5058
+ ok: boolean;
5059
+ backend: AdminGeneratedBackend;
5060
+ }>;
5061
+ deleteGeneratedBackend(backendId: string): Promise<{
5062
+ ok: boolean;
5063
+ }>;
5064
+ listPromptTemplates(options?: AdminListOptions & {
5065
+ category?: string;
5066
+ }): Promise<{
5067
+ ok: boolean;
5068
+ templates: AdminPromptTemplate[];
5069
+ total: number;
5070
+ }>;
5071
+ createPromptTemplate(data: {
5072
+ name: string;
5073
+ slug: string;
5074
+ category: string;
5075
+ description?: string;
5076
+ systemPrompt: string;
5077
+ userPromptTemplate?: string;
5078
+ variables?: string[];
5079
+ isEnabled?: boolean;
5080
+ }): Promise<{
5081
+ ok: boolean;
5082
+ template: AdminPromptTemplate;
5083
+ }>;
5084
+ updatePromptTemplate(templateId: string, data: Partial<{
5085
+ name: string;
5086
+ slug: string;
5087
+ category: string;
5088
+ description: string;
5089
+ systemPrompt: string;
5090
+ userPromptTemplate: string;
5091
+ variables: string[];
5092
+ isEnabled: boolean;
5093
+ }>): Promise<{
5094
+ ok: boolean;
5095
+ template: AdminPromptTemplate;
5096
+ }>;
5097
+ deletePromptTemplate(templateId: string): Promise<{
5098
+ ok: boolean;
5099
+ }>;
5100
+ listContextSnapshots(options?: AdminListOptions & {
5101
+ projectId?: string;
5102
+ }): Promise<{
5103
+ ok: boolean;
5104
+ snapshots: AdminContextSnapshot[];
5105
+ total: number;
5106
+ }>;
5107
+ invalidateContextSnapshot(snapshotId: string): Promise<{
5108
+ ok: boolean;
5109
+ }>;
5110
+ deleteContextSnapshot(snapshotId: string): Promise<{
5111
+ ok: boolean;
5112
+ }>;
4770
5113
  }
4771
5114
 
4772
5115
  /**
@@ -5184,6 +5527,369 @@ interface BudgetStatus {
5184
5527
  hardStop: boolean;
5185
5528
  percentUsed: number;
5186
5529
  }
5530
+ /**
5531
+ * AI model tiers
5532
+ */
5533
+ type AIModelTier = "free" | "paid" | "enterprise";
5534
+ /**
5535
+ * AI model provider
5536
+ */
5537
+ type AIModelProvider = "openai" | "anthropic";
5538
+ /**
5539
+ * Generation types supported by the AI workspace
5540
+ */
5541
+ type GenerationType = "schema" | "storage" | "functions" | "backend" | "fullstack";
5542
+ /**
5543
+ * Model capabilities
5544
+ */
5545
+ interface AIModelCapabilities {
5546
+ streaming: boolean;
5547
+ vision: boolean;
5548
+ toolUse: boolean;
5549
+ reasoning: boolean;
5550
+ codeGeneration: boolean;
5551
+ }
5552
+ /**
5553
+ * An AI model available in the platform
5554
+ */
5555
+ interface AIModel {
5556
+ id: string;
5557
+ provider: AIModelProvider;
5558
+ displayName: string;
5559
+ description: string;
5560
+ tier: AIModelTier;
5561
+ creditMultiplier: number;
5562
+ maxInputTokens: number;
5563
+ maxOutputTokens: number;
5564
+ capabilities: AIModelCapabilities;
5565
+ bestFor: string[];
5566
+ }
5567
+ /**
5568
+ * Available models response
5569
+ */
5570
+ interface AvailableModelsResult {
5571
+ models: AIModel[];
5572
+ recommended: {
5573
+ primary: string;
5574
+ reasoning: string;
5575
+ quick: string;
5576
+ };
5577
+ /** @deprecated Use userPlan instead */
5578
+ plan?: string;
5579
+ /** @deprecated Use userTier instead */
5580
+ modelTier?: AIModelTier;
5581
+ /** User's current plan (free, starter, pro, agency, studio_plus, enterprise) */
5582
+ userPlan: string;
5583
+ /** User's model tier access (free, paid, enterprise) */
5584
+ userTier: AIModelTier;
5585
+ maxContextTokens: number;
5586
+ }
5587
+ /**
5588
+ * Workspace session types
5589
+ */
5590
+ type WorkspaceSessionType = "backend_generation" | "schema_design" | "code_review";
5591
+ /**
5592
+ * Workspace session status
5593
+ */
5594
+ type WorkspaceSessionStatus = "active" | "completed" | "error" | "cancelled";
5595
+ /**
5596
+ * Turn types in a workspace session
5597
+ */
5598
+ type WorkspaceTurnType = "user_input" | "clarification" | "reasoning" | "generation";
5599
+ /**
5600
+ * A turn in a workspace session
5601
+ */
5602
+ interface WorkspaceTurn {
5603
+ id: string;
5604
+ sessionId: string;
5605
+ turnIndex: number;
5606
+ turnType: WorkspaceTurnType;
5607
+ inputContent?: string;
5608
+ reasoningContent?: string;
5609
+ outputContent?: string;
5610
+ generatedCode?: Record<string, string>;
5611
+ clarificationQuestions?: ClarificationQuestion[];
5612
+ clarificationResponses?: ClarificationResponses;
5613
+ inputTokens: number;
5614
+ outputTokens: number;
5615
+ creditsCharged: string;
5616
+ modelUsed?: string;
5617
+ durationMs?: number;
5618
+ status: string;
5619
+ createdAt: string;
5620
+ }
5621
+ /**
5622
+ * A workspace session
5623
+ */
5624
+ interface WorkspaceSession {
5625
+ id: string;
5626
+ projectId: string;
5627
+ userId: string;
5628
+ sessionType: WorkspaceSessionType;
5629
+ title?: string;
5630
+ description?: string;
5631
+ status: WorkspaceSessionStatus;
5632
+ generationConfig: Record<string, unknown>;
5633
+ contextSnapshot: ProjectContext;
5634
+ primaryModelId?: string;
5635
+ totalInputTokens: number;
5636
+ totalOutputTokens: number;
5637
+ totalCreditsUsed: string;
5638
+ outputArtifacts: Array<{
5639
+ type: string;
5640
+ id: string;
5641
+ }>;
5642
+ createdAt: string;
5643
+ updatedAt: string;
5644
+ completedAt?: string;
5645
+ }
5646
+ /**
5647
+ * Input for creating a workspace session
5648
+ */
5649
+ interface CreateWorkspaceSessionInput {
5650
+ projectId: string;
5651
+ sessionType: WorkspaceSessionType;
5652
+ title?: string;
5653
+ description?: string;
5654
+ primaryModelId?: string;
5655
+ generationConfig?: {
5656
+ framework?: "express" | "fastify" | "hono";
5657
+ language?: "typescript" | "javascript";
5658
+ packageManager?: "npm" | "yarn" | "pnpm" | "bun";
5659
+ };
5660
+ }
5661
+ /**
5662
+ * Input for submitting a prompt
5663
+ */
5664
+ interface SubmitPromptInput {
5665
+ prompt: string;
5666
+ modelId?: string;
5667
+ }
5668
+ /**
5669
+ * Clarification question types
5670
+ */
5671
+ type ClarificationQuestionType = "multiple_choice" | "text" | "boolean" | "multi_select";
5672
+ /**
5673
+ * Clarification categories
5674
+ */
5675
+ type ClarificationCategory = "architecture" | "features" | "data_model" | "auth" | "api_design" | "storage" | "realtime" | "deployment" | "integrations";
5676
+ /**
5677
+ * A clarification question
5678
+ */
5679
+ interface ClarificationQuestion {
5680
+ id: string;
5681
+ question: string;
5682
+ type: ClarificationQuestionType;
5683
+ category: ClarificationCategory;
5684
+ options?: string[];
5685
+ defaultValue?: string | string[];
5686
+ required: boolean;
5687
+ helpText?: string;
5688
+ }
5689
+ /**
5690
+ * User's responses to clarification questions
5691
+ */
5692
+ interface ClarificationResponses {
5693
+ [questionId: string]: string | string[] | boolean;
5694
+ }
5695
+ /**
5696
+ * Extracted requirements from a prompt
5697
+ */
5698
+ interface ExtractedRequirements {
5699
+ projectType?: string;
5700
+ features: string[];
5701
+ dataEntities: string[];
5702
+ authMethod?: string;
5703
+ apiStyle?: string;
5704
+ frameworks?: string[];
5705
+ integrations: string[];
5706
+ unclear: string[];
5707
+ }
5708
+ /**
5709
+ * Clarification analysis result
5710
+ */
5711
+ interface ClarificationAnalysisResult {
5712
+ needsClarification: boolean;
5713
+ confidence: "low" | "medium" | "high";
5714
+ questions: ClarificationQuestion[];
5715
+ extractedRequirements: ExtractedRequirements;
5716
+ suggestedApproach?: string;
5717
+ }
5718
+ /**
5719
+ * Submit prompt result
5720
+ */
5721
+ interface SubmitPromptResult {
5722
+ turn: WorkspaceTurn;
5723
+ needsClarification: boolean;
5724
+ questions: ClarificationQuestion[];
5725
+ suggestedApproach?: string;
5726
+ extractedRequirements: ExtractedRequirements;
5727
+ }
5728
+ /**
5729
+ * Submit clarification result
5730
+ */
5731
+ interface SubmitClarificationResult {
5732
+ turn: WorkspaceTurn;
5733
+ config: BackendGenerationConfig;
5734
+ readyToGenerate: boolean;
5735
+ }
5736
+ /**
5737
+ * Backend generation configuration
5738
+ */
5739
+ interface BackendGenerationConfig {
5740
+ framework: "express" | "fastify" | "hono";
5741
+ language: "typescript" | "javascript";
5742
+ packageManager: "npm" | "yarn" | "pnpm" | "bun";
5743
+ authMethod: "none" | "jwt" | "session" | "oauth" | "api_key";
5744
+ apiStyle: "rest" | "graphql" | "trpc";
5745
+ includeRealtime: boolean;
5746
+ features: {
5747
+ validation: boolean;
5748
+ errorHandling: boolean;
5749
+ logging: boolean;
5750
+ cors: boolean;
5751
+ rateLimit: boolean;
5752
+ tests: boolean;
5753
+ docker: boolean;
5754
+ };
5755
+ }
5756
+ /**
5757
+ * A generated backend
5758
+ */
5759
+ interface GeneratedBackend {
5760
+ id: string;
5761
+ projectId: string;
5762
+ sessionId?: string;
5763
+ userId: string;
5764
+ name: string;
5765
+ description?: string;
5766
+ framework: string;
5767
+ language: string;
5768
+ packageManager: string;
5769
+ files: Record<string, string>;
5770
+ fileCount: number;
5771
+ totalLines: number;
5772
+ connectionConfig: Record<string, unknown>;
5773
+ dependencies: Record<string, string>;
5774
+ devDependencies: Record<string, string>;
5775
+ status: "draft" | "ready" | "deployed";
5776
+ githubRepoUrl?: string;
5777
+ deployedUrl?: string;
5778
+ createdAt: string;
5779
+ updatedAt: string;
5780
+ }
5781
+ /**
5782
+ * Generate backend result
5783
+ */
5784
+ interface GenerateBackendResult {
5785
+ backend: GeneratedBackend;
5786
+ files: Array<{
5787
+ path: string;
5788
+ content: string;
5789
+ language: string;
5790
+ }>;
5791
+ totalLines: number;
5792
+ }
5793
+ /**
5794
+ * Input for generating a backend
5795
+ */
5796
+ interface GenerateBackendInput {
5797
+ name: string;
5798
+ config?: Partial<BackendGenerationConfig>;
5799
+ }
5800
+ /**
5801
+ * Input for submitting a modification request
5802
+ */
5803
+ interface SubmitModificationInput {
5804
+ prompt: string;
5805
+ modelId: string;
5806
+ existingCode?: Record<string, string>;
5807
+ }
5808
+ /**
5809
+ * Result of a modification request
5810
+ */
5811
+ interface SubmitModificationResult {
5812
+ turn?: WorkspaceTurn;
5813
+ modifiedFiles?: Record<string, string>;
5814
+ }
5815
+ /**
5816
+ * Project context for AI operations
5817
+ */
5818
+ interface ProjectContext {
5819
+ project: {
5820
+ id: string;
5821
+ name: string;
5822
+ slug: string;
5823
+ features: Record<string, boolean>;
5824
+ };
5825
+ schema: {
5826
+ tables: Array<{
5827
+ name: string;
5828
+ columns: Array<{
5829
+ name: string;
5830
+ type: string;
5831
+ nullable: boolean;
5832
+ }>;
5833
+ primaryKey: string[];
5834
+ foreignKeys: Array<{
5835
+ columns: string[];
5836
+ referencesTable: string;
5837
+ referencesColumns: string[];
5838
+ }>;
5839
+ }>;
5840
+ totalRelationships: number;
5841
+ };
5842
+ storage: {
5843
+ buckets: Array<{
5844
+ name: string;
5845
+ public: boolean;
5846
+ size?: number;
5847
+ }>;
5848
+ };
5849
+ functions: {
5850
+ list: Array<{
5851
+ name: string;
5852
+ description?: string;
5853
+ }>;
5854
+ totalFunctions: number;
5855
+ };
5856
+ tokenCounts: {
5857
+ schema: number;
5858
+ storage: number;
5859
+ functions: number;
5860
+ code: number;
5861
+ total: number;
5862
+ };
5863
+ }
5864
+ /**
5865
+ * Context summary
5866
+ */
5867
+ interface ContextSummary {
5868
+ tables: number;
5869
+ columns: number;
5870
+ relationships: number;
5871
+ buckets: number;
5872
+ functions: number;
5873
+ tokens: number;
5874
+ }
5875
+ /**
5876
+ * Get context result
5877
+ */
5878
+ interface GetContextResult {
5879
+ context: ProjectContext;
5880
+ summary: ContextSummary;
5881
+ formatted: string;
5882
+ tokenCounts: ProjectContext["tokenCounts"];
5883
+ }
5884
+ /**
5885
+ * Token estimation result
5886
+ */
5887
+ interface EstimateTokensResult {
5888
+ promptTokens: number;
5889
+ contextTokens: number;
5890
+ totalTokens: number;
5891
+ estimatedCost: number;
5892
+ }
5187
5893
  /**
5188
5894
  * AI module interface for the VAIF client
5189
5895
  */
@@ -5308,6 +6014,190 @@ interface AIModule {
5308
6014
  deleteConversation(conversationId: string): Promise<{
5309
6015
  ok: boolean;
5310
6016
  }>;
6017
+ /**
6018
+ * Get available AI models for the current user's plan
6019
+ *
6020
+ * @example
6021
+ * ```ts
6022
+ * const result = await vaif.ai.getAvailableModels();
6023
+ * console.log(result.models); // Available models
6024
+ * console.log(result.recommended); // Recommended models for different tasks
6025
+ * ```
6026
+ */
6027
+ getAvailableModels(): Promise<AvailableModelsResult>;
6028
+ /**
6029
+ * Get details for a specific model
6030
+ */
6031
+ getModel(modelId: string): Promise<{
6032
+ model: AIModel;
6033
+ }>;
6034
+ /**
6035
+ * Get full project context for AI operations
6036
+ *
6037
+ * @example
6038
+ * ```ts
6039
+ * const result = await vaif.ai.getProjectContext('proj_123');
6040
+ * console.log(result.summary); // { tables: 5, columns: 25, ... }
6041
+ * console.log(result.tokenCounts.total); // Total tokens used for context
6042
+ * ```
6043
+ */
6044
+ getProjectContext(projectId: string): Promise<GetContextResult>;
6045
+ /**
6046
+ * Estimate tokens for a prompt
6047
+ */
6048
+ estimateTokens(prompt: string, projectId?: string): Promise<EstimateTokensResult>;
6049
+ /**
6050
+ * Analyze a prompt and get clarification questions before generation
6051
+ *
6052
+ * @example
6053
+ * ```ts
6054
+ * const result = await vaif.ai.analyzeForClarification({
6055
+ * prompt: 'Create a chat application backend',
6056
+ * projectId: 'proj_123'
6057
+ * });
6058
+ * if (result.needsClarification) {
6059
+ * console.log(result.questions); // Questions to ask user
6060
+ * }
6061
+ * ```
6062
+ */
6063
+ analyzeForClarification(input: {
6064
+ prompt: string;
6065
+ projectId: string;
6066
+ }): Promise<ClarificationAnalysisResult>;
6067
+ /**
6068
+ * Get AI-generated prompt suggestions based on generation types
6069
+ *
6070
+ * @example
6071
+ * ```ts
6072
+ * const result = await vaif.ai.getSuggestions({
6073
+ * projectId: 'proj_123',
6074
+ * generationTypes: ['schema', 'backend']
6075
+ * });
6076
+ * console.log(result.suggestions); // Array of contextual prompt suggestions
6077
+ * ```
6078
+ */
6079
+ getSuggestions(input: {
6080
+ projectId: string;
6081
+ generationTypes: GenerationType[];
6082
+ }): Promise<{
6083
+ suggestions: string[];
6084
+ }>;
6085
+ /**
6086
+ * Create a new AI workspace session
6087
+ *
6088
+ * @example
6089
+ * ```ts
6090
+ * const result = await vaif.ai.workspace.create({
6091
+ * projectId: 'proj_123',
6092
+ * sessionType: 'backend_generation',
6093
+ * title: 'Chat App Backend'
6094
+ * });
6095
+ * console.log(result.session.id);
6096
+ * ```
6097
+ */
6098
+ workspace: {
6099
+ /**
6100
+ * Create a new workspace session
6101
+ */
6102
+ create(input: CreateWorkspaceSessionInput): Promise<{
6103
+ session: WorkspaceSession;
6104
+ }>;
6105
+ /**
6106
+ * Get a workspace session with its turns
6107
+ */
6108
+ get(sessionId: string): Promise<{
6109
+ session: WorkspaceSession;
6110
+ turns: WorkspaceTurn[];
6111
+ }>;
6112
+ /**
6113
+ * List workspace sessions for a project
6114
+ */
6115
+ list(projectId: string): Promise<{
6116
+ sessions: WorkspaceSession[];
6117
+ }>;
6118
+ /**
6119
+ * Submit a prompt to a workspace session
6120
+ */
6121
+ submitPrompt(sessionId: string, input: SubmitPromptInput): Promise<SubmitPromptResult>;
6122
+ /**
6123
+ * Submit clarification responses
6124
+ */
6125
+ submitClarification(sessionId: string, responses: ClarificationResponses): Promise<SubmitClarificationResult>;
6126
+ /**
6127
+ * Generate backend code for a session
6128
+ */
6129
+ generate(sessionId: string, input: GenerateBackendInput): Promise<GenerateBackendResult>;
6130
+ /**
6131
+ * Submit a modification request to existing generated code
6132
+ */
6133
+ submitModification(sessionId: string, input: SubmitModificationInput): Promise<SubmitModificationResult>;
6134
+ };
6135
+ /**
6136
+ * Generated backend operations
6137
+ */
6138
+ backends: {
6139
+ /**
6140
+ * Get a generated backend by ID
6141
+ */
6142
+ get(backendId: string): Promise<{
6143
+ backend: GeneratedBackend;
6144
+ }>;
6145
+ /**
6146
+ * List generated backends for a project
6147
+ */
6148
+ list(projectId: string): Promise<{
6149
+ backends: Array<{
6150
+ id: string;
6151
+ name: string;
6152
+ description?: string;
6153
+ framework: string;
6154
+ language: string;
6155
+ fileCount: number;
6156
+ totalLines: number;
6157
+ status: string;
6158
+ createdAt: string;
6159
+ }>;
6160
+ }>;
6161
+ /**
6162
+ * Delete a generated backend
6163
+ */
6164
+ delete(backendId: string): Promise<{
6165
+ ok: boolean;
6166
+ }>;
6167
+ /**
6168
+ * Deploy a generated backend as a new VAIF project
6169
+ */
6170
+ deploy(backendId: string, input: {
6171
+ orgId: string;
6172
+ projectName: string;
6173
+ description?: string;
6174
+ }): Promise<{
6175
+ ok: boolean;
6176
+ project: {
6177
+ id: string;
6178
+ name: string;
6179
+ orgId: string;
6180
+ description?: string;
6181
+ createdAt: string;
6182
+ };
6183
+ backend: {
6184
+ id: string;
6185
+ name: string;
6186
+ status: string;
6187
+ };
6188
+ }>;
6189
+ };
6190
+ /**
6191
+ * Get user's organizations for deploy selection
6192
+ */
6193
+ getUserOrganizations(): Promise<{
6194
+ organizations: Array<{
6195
+ id: string;
6196
+ name: string;
6197
+ createdAt: string;
6198
+ role: string;
6199
+ }>;
6200
+ }>;
5311
6201
  }
5312
6202
 
5313
6203
  /**
@@ -5322,6 +6212,37 @@ interface BootstrapUser {
5322
6212
  timezone?: string;
5323
6213
  createdAt: string;
5324
6214
  }
6215
+ /**
6216
+ * Plan limits included in bootstrap
6217
+ */
6218
+ interface BootstrapPlanLimits {
6219
+ projectsMax: number;
6220
+ apiRequestsMonthly: number;
6221
+ storageGb: number;
6222
+ functionInvocationsMonthly: number;
6223
+ realtimeConnectionsMax: number;
6224
+ realtimeMessagesMonthly: number;
6225
+ aiCreditsMonthly: number;
6226
+ databaseRowsMax: number;
6227
+ teamMembersMax: number;
6228
+ }
6229
+ /**
6230
+ * Entitlements data from bootstrap
6231
+ */
6232
+ interface BootstrapEntitlements {
6233
+ /** User's current plan (free, starter, pro, agency, studio_plus, enterprise) */
6234
+ plan: string;
6235
+ /** Subscription status */
6236
+ status: string;
6237
+ /** Plan limits */
6238
+ limits: BootstrapPlanLimits;
6239
+ /** AI model tier access (free, paid, enterprise) */
6240
+ aiModelTier: string;
6241
+ /** Current billing period end date */
6242
+ currentPeriodEnd?: string;
6243
+ /** Whether subscription will cancel at period end */
6244
+ cancelAtPeriodEnd: boolean;
6245
+ }
5325
6246
  /**
5326
6247
  * Bootstrap response containing all initial data
5327
6248
  */
@@ -5332,6 +6253,8 @@ interface BootstrapData {
5332
6253
  role: string;
5333
6254
  })[];
5334
6255
  projects: Project[];
6256
+ /** User's plan entitlements (based on primary org) */
6257
+ entitlements: BootstrapEntitlements | null;
5335
6258
  }
5336
6259
  /**
5337
6260
  * Bootstrap module interface
@@ -6687,4 +7610,4 @@ declare class VaifNotFoundError extends VaifError {
6687
7610
  */
6688
7611
  declare function isVaifError(error: unknown): error is VaifError;
6689
7612
 
6690
- export { type AIModule, type AIPlan, type AIPlanStep, type AIProjectOverrides, type AISettings, type AIUsageBreakdown, type AIUsageResult, type AddBillingContactInput, type AdminListOptions, type AdminModule, type AdminOrg, type AdminOrgDetails, type AdminOrgMember, type AdminOrgProfile, type AdminOverviewResponse, type AdminProject, type AdminProjectDetails, type AdminUser, type AdminUserDetails, type AggregateClause, type AggregateFunction, type AggregateOptions, type AggregateResult, type AnalyticsConfig, type AndFilter, type ApiErrorResponse, type ApiKey, type ApiParam, type ApiResponse, type ApplyInput, type ApplyResponse, type AuthModule, type AuthResponse, type BaseEntity, type BatchCreateOptions, type BatchCreateResult, type BatchDeleteResult$1 as BatchDeleteResult, type BatchInvokeInput, type BatchInvokeResult, type BatchUpdateOptions, type BatchUpdateResult, type BillingContact, type BillingModule, type BillingSummary, type BootstrapData, type BootstrapModule, type BootstrapUser, type BroadcastEvent, type BroadcastOptions, type BudgetStatus, type ChangePasswordInput, type ChangelogFeature, type ChannelOptions, type ChannelType, type CheckEntitlementInput, type CheckEntitlementResponse, type CheckoutInput, type CheckoutResponse, type CodeLanguage, type ColumnDefinition, type ColumnType, type ComponentStatus, type ConfigureOAuthInput, type ConnectionState, type Conversation, type ConversationMessage, type CopyOptions, type CreateApiKeyInput, type CreateApiKeyResponse, type CreateBucketInput, type CreateBucketOptions, type CreateConversationInput, type CreateDeployTokenInput, type CreateDeployTokenResult, type CreateDocApiEndpointInput, type CreateDocChangelogInput, type CreateDocExampleInput, type CreateDocPageInput, type CreateDocSdkExampleInput, type CreateDocSdkInput, type CreateEnvVarInput, type CreateFlagInput, type CreateFunctionInput, type CreateIncidentInput, type CreateOrgInput, type CreateProjectFromTemplateResponse, type CreateProjectInput, type CreateProjectResponse, type CreateSecretInput, type CreateSubscriptionInput, type CursorPaginationOptions, type CursorPaginationResult, type DLQListOptions, type DLQMessage, type DataModule, type DbChangeEvent, type DbOperation, type DeleteOptions, type DeleteResponse, type DeleteSecretResult, type DeliveryStatus, type DeployOptions, type DeployResult, type DeployToken, type Deployment, type DeploymentStep, type DeploymentWithSteps, type DeploymentsModule, type DiscordConfig, type DlqDelivery, type DocApiEndpoint, type DocChangelogEntry, type DocExample, type DocPage, type DocSdk, type DocSdkExample, type DocSearchResult, type DocsModule, type DownloadOptions, type EmailConfig, type EmailVerificationConfirmInput, type EmailVerificationRequestInput, type EnableAllRealtimeInput, type EnableAllRealtimeResult, type EntitlementsResponse, type EnvVar, type Environment, type ErrorEvent, type Event, type EventFilter, type EventHandler, type EventSource, type ExampleEndpoint, type ExampleFunction, type ExampleRealtimeEvent, type ExplainPlanInput, type ExplainPlanResult, type ExportCodeInput, type ExportCodeResult, type FeatureFlag, type FileMetadata, type FlagsModule, type FunctionEnvVar, type FunctionInvocation, type FunctionLog, type RetryConfig as FunctionRetryConfig, type FunctionRuntime, type FunctionVersion, type FunctionsModule, type GenerateEndpointInput, type GenerateEndpointResult, type GenerateFunctionInput, type GenerateFunctionResult, type GeneratePlanInput, type GeneratePlanResult, type GeneratedFile, type GetProjectResponse, type HttpMethod, type ImageTransformOptions, type IncidentAlert, type IncidentSeverity, type IncidentStatus, type IncludeClause, type IndexDefinition, type InstallApplyResponse, type InstallPreviewResponse, type InstallRealtimeInput, type InstallRealtimeResult, type IntegrationsModule, type InviteMemberInput, type InvokeInput, type InvokeOptions, type InvokeResult, type IsolationLevel, type ItemResponse, type ListDeliveriesOptions, type ListEventsOptions, type ListFilesOptions, type ListFilesResponse, type ListFunctionsOptions, type ListInvocationsOptions, type ListResponse, type LoginOptions, type MFAChallenge, type MFAMethod, type MFASetupResponse, type MFAVerifyResponse, type MagicLinkRequestInput, type MagicLinkVerifyInput, type MessageRole, type Migration, type MigrationResult, type Mode, type MongoAggregateOptions, type MongoArrayOperator, type MongoCollectionClient, type MongoComparisonOperator, type MongoCursor, type MongoDBModule, type MongoDeleteResult, type MongoDistinctOptions, type MongoElementOperator, type MongoEvaluationOperator, type MongoFilter, type MongoFindAndModifyResult, type MongoFindOneAndDeleteOptions, type MongoFindOneAndUpdateOptions, type MongoFindOptions, type MongoInsertManyResult, type MongoInsertOneResult, type MongoLogicalOperator, type MongoPipelineStage, type MongoProjection, type MongoSort, type MongoUpdateOperators, type MongoUpdateOptions, type MongoUpdateResult, type MoveOptions, type MultipartUpload, type MultipartUploadOptions, type NotFilter, type OAuthCallbackInput, type OAuthConnection, type OAuthModule, type OAuthProvider, type OAuthProviderType, type OAuthSignInOptions, type OAuthSignInResponse, type OrFilter, type OrderByClause, type Org, type OrgBilling, type OrgMember, type OrgMembership, type OrgProfile, type OrgsModule, type PageInfo, type PaginatedResult, type PasswordResetConfirmInput, type PasswordResetRequestInput, type PendingInvite, type PhoneVerificationConfirmInput, type PhoneVerificationRequestInput, type PlanDefinition, type PlanLimits, type PlanName, type PlanStep, type PlansResponse, type PortalInput, type PortalResponse, type PresenceEntry, type PresenceEvent, type PresenceState, type PresenceStateEvent, type PresenceTrackOptions, type PresignedUrl, type PreviewInput, type PreviewResponse, type Project, type ProjectMetrics, type ProjectResource, type ProjectResourcesResponse, type ProjectStats, type ProjectsModule, type PromoteInput, type PromoteResult, type Provider, type PublishEventInput, type PublishEventResult, type QueryOptions, type QueueStats, type QueueTotals, type RealtimeChannel, type RealtimeClient, type RealtimeClientEvent, type RealtimeConfig, type RealtimeConnection, type RealtimeEvent, type RealtimeEventType, type RealtimeMonitoringEvent, type RealtimeMonitoringModule, type RealtimeStats, type RealtimeStatus, type RealtimeSubscription, type RefreshTokenResponse, type Region, type RetryConfig$1 as RetryConfig, type RollbackResult, type SaveSchemaInput, type SavedSchema, type ScheduleConfig, type SchemaDefinition, type SchemaModule, type Secret, type SecretsModule, type SecurityAuditLog, type SecurityModule, type SecurityOverview, type SendMessageInput, type Session, type SetDedicatedDbInput, type SignUpOptions, type SignedUrlResponse, type SlackConfig, type StandardEventName, type StatusComponent, type StorageBucket, type StorageDashboardModule, type StorageFile, type StorageModule, type SubscribeOptions, type Subscription, type SubscriptionConfig, type SubscriptionFilter, type SubscriptionType, type TableClient, type TableDefinition, type TaskType, type Template, type TemplateCategory, type TemplateDefinition, type TemplateVersion, type TemplateVisibility, type TemplatesModule, type TransactionOperation, type TransactionOptions, type TransactionResult, type TypedEventHandler, type TypedFunction, type UnsubscribeFn, type UpdateAIProjectOverridesInput, type UpdateAISettingsInput, type UpdateBucketInput, type UpdateBucketOptions, type UpdateComponentStatusInput, type UpdateDocPageInput, type UpdateDocSdkInput, type UpdateEnvVarInput, type UpdateFlagInput, type UpdateFunctionInput, type UpdateOrgProfileInput, type UpdateProfileInput, type UpdateProjectInput, type UpdateRegionInput, type UpdateSubscriptionInput, type UploadFromUrlOptions, type UploadOptions, type UploadPart, type UploadResult$1 as UploadResult, type UpsertOptions, type Usage, type UsageEntry, type User, type UserActivity, type UserMembership, VaifAuthError, type VaifClient, type VaifClientConfig, VaifError, type VaifFunction, VaifNetworkError, VaifNotFoundError, VaifRateLimitError, VaifValidationError, type VerifySignatureOptions, type WebhookConfig, type WebhookDelivery, type WelcomeEvent, type WhereClause, type WhereFilter, type WhereOperator, createVaifClient, isVaifError };
7613
+ export { type AIModule, type AIPlan, type AIPlanStep, type AIProjectOverrides, type AISettings, type AIUsageBreakdown, type AIUsageResult, type AddBillingContactInput, type AdminListOptions, type AdminModule, type AdminOrg, type AdminOrgDetails, type AdminOrgMember, type AdminOrgProfile, type AdminOverviewResponse, type AdminProject, type AdminProjectDetails, type AdminUser, type AdminUserDetails, type AggregateClause, type AggregateFunction, type AggregateOptions, type AggregateResult, type AnalyticsConfig, type AndFilter, type ApiErrorResponse, type ApiKey, type ApiParam, type ApiResponse, type ApplyInput, type ApplyResponse, type AuthModule, type AuthResponse, type BaseEntity, type BatchCreateOptions, type BatchCreateResult, type BatchDeleteResult$1 as BatchDeleteResult, type BatchInvokeInput, type BatchInvokeResult, type BatchUpdateOptions, type BatchUpdateResult, type BillingContact, type BillingModule, type BillingSummary, type BootstrapData, type BootstrapEntitlements, type BootstrapModule, type BootstrapPlanLimits, type BootstrapUser, type BroadcastEvent, type BroadcastOptions, type BudgetStatus, type ChangePasswordInput, type ChangelogFeature, type ChannelOptions, type ChannelType, type CheckEntitlementInput, type CheckEntitlementResponse, type CheckoutInput, type CheckoutResponse, type CodeLanguage, type ColumnDefinition, type ColumnType, type ComponentStatus, type ConfigureOAuthInput, type ConnectionState, type Conversation, type ConversationMessage, type CopyOptions, type CreateApiKeyInput, type CreateApiKeyResponse, type CreateBucketInput, type CreateBucketOptions, type CreateConversationInput, type CreateDeployTokenInput, type CreateDeployTokenResult, type CreateDocApiEndpointInput, type CreateDocChangelogInput, type CreateDocExampleInput, type CreateDocPageInput, type CreateDocSdkExampleInput, type CreateDocSdkInput, type CreateEnvVarInput, type CreateFlagInput, type CreateFunctionInput, type CreateIncidentInput, type CreateOrgInput, type CreateProjectFromTemplateResponse, type CreateProjectInput, type CreateProjectResponse, type CreateSecretInput, type CreateSubscriptionInput, type CursorPaginationOptions, type CursorPaginationResult, type DLQListOptions, type DLQMessage, type DataModule, type DbChangeEvent, type DbOperation, type DeleteOptions, type DeleteResponse, type DeleteSecretResult, type DeliveryStatus, type DeployOptions, type DeployResult, type DeployToken, type Deployment, type DeploymentStep, type DeploymentWithSteps, type DeploymentsModule, type DiscordConfig, type DlqDelivery, type DocApiEndpoint, type DocChangelogEntry, type DocExample, type DocPage, type DocSdk, type DocSdkExample, type DocSearchResult, type DocsModule, type DownloadOptions, type EmailConfig, type EmailVerificationConfirmInput, type EmailVerificationRequestInput, type EnableAllRealtimeInput, type EnableAllRealtimeResult, type EntitlementsResponse, type EnvVar, type Environment, type ErrorEvent, type Event, type EventFilter, type EventHandler, type EventSource, type ExampleEndpoint, type ExampleFunction, type ExampleRealtimeEvent, type ExplainPlanInput, type ExplainPlanResult, type ExportCodeInput, type ExportCodeResult, type FeatureFlag, type FileMetadata, type FlagsModule, type FunctionEnvVar, type FunctionInvocation, type FunctionLog, type RetryConfig as FunctionRetryConfig, type FunctionRuntime, type FunctionVersion, type FunctionsModule, type GenerateEndpointInput, type GenerateEndpointResult, type GenerateFunctionInput, type GenerateFunctionResult, type GeneratePlanInput, type GeneratePlanResult, type GeneratedFile, type GetProjectResponse, type HttpMethod, type ImageTransformOptions, type IncidentAlert, type IncidentSeverity, type IncidentStatus, type IncludeClause, type IndexDefinition, type InstallApplyResponse, type InstallPreviewResponse, type InstallRealtimeInput, type InstallRealtimeResult, type IntegrationsModule, type InviteMemberInput, type InvokeInput, type InvokeOptions, type InvokeResult, type IsolationLevel, type ItemResponse, type ListDeliveriesOptions, type ListEventsOptions, type ListFilesOptions, type ListFilesResponse, type ListFunctionsOptions, type ListInvocationsOptions, type ListResponse, type LoginOptions, type MFAChallenge, type MFAMethod, type MFASetupResponse, type MFAVerifyResponse, type MagicLinkRequestInput, type MagicLinkVerifyInput, type MessageRole, type Migration, type MigrationResult, type Mode, type MongoAggregateOptions, type MongoArrayOperator, type MongoCollectionClient, type MongoComparisonOperator, type MongoCursor, type MongoDBModule, type MongoDeleteResult, type MongoDistinctOptions, type MongoElementOperator, type MongoEvaluationOperator, type MongoFilter, type MongoFindAndModifyResult, type MongoFindOneAndDeleteOptions, type MongoFindOneAndUpdateOptions, type MongoFindOptions, type MongoInsertManyResult, type MongoInsertOneResult, type MongoLogicalOperator, type MongoPipelineStage, type MongoProjection, type MongoSort, type MongoUpdateOperators, type MongoUpdateOptions, type MongoUpdateResult, type MoveOptions, type MultipartUpload, type MultipartUploadOptions, type NotFilter, type OAuthCallbackInput, type OAuthConnection, type OAuthModule, type OAuthProvider, type OAuthProviderType, type OAuthSignInOptions, type OAuthSignInResponse, type OrFilter, type OrderByClause, type Org, type OrgBilling, type OrgMember, type OrgMembership, type OrgProfile, type OrgsModule, type PageInfo, type PaginatedResult, type PasswordResetConfirmInput, type PasswordResetRequestInput, type PendingInvite, type PhoneVerificationConfirmInput, type PhoneVerificationRequestInput, type PlanDefinition, type PlanLimits, type PlanName, type PlanStep, type PlansResponse, type PortalInput, type PortalResponse, type PresenceEntry, type PresenceEvent, type PresenceState, type PresenceStateEvent, type PresenceTrackOptions, type PresignedUrl, type PreviewInput, type PreviewResponse, type Project, type ProjectMetrics, type ProjectResource, type ProjectResourcesResponse, type ProjectStats, type ProjectsModule, type PromoteInput, type PromoteResult, type Provider, type PublishEventInput, type PublishEventResult, type QueryOptions, type QueueStats, type QueueTotals, type RealtimeChannel, type RealtimeClient, type RealtimeClientEvent, type RealtimeConfig, type RealtimeConnection, type RealtimeEvent, type RealtimeEventType, type RealtimeMonitoringEvent, type RealtimeMonitoringModule, type RealtimeStats, type RealtimeStatus, type RealtimeSubscription, type RefreshTokenResponse, type Region, type RetryConfig$1 as RetryConfig, type RollbackResult, type SaveSchemaInput, type SavedSchema, type ScheduleConfig, type SchemaDefinition, type SchemaModule, type Secret, type SecretsModule, type SecurityAuditLog, type SecurityModule, type SecurityOverview, type SendMessageInput, type Session, type SetDedicatedDbInput, type SignUpOptions, type SignedUrlResponse, type SlackConfig, type StandardEventName, type StatusComponent, type StorageBucket, type StorageDashboardModule, type StorageFile, type StorageModule, type SubscribeOptions, type Subscription, type SubscriptionConfig, type SubscriptionFilter, type SubscriptionType, type TableClient, type TableDefinition, type TaskType, type Template, type TemplateCategory, type TemplateDefinition, type TemplateVersion, type TemplateVisibility, type TemplatesModule, type TransactionOperation, type TransactionOptions, type TransactionResult, type TypedEventHandler, type TypedFunction, type UnsubscribeFn, type UpdateAIProjectOverridesInput, type UpdateAISettingsInput, type UpdateBucketInput, type UpdateBucketOptions, type UpdateComponentStatusInput, type UpdateDocPageInput, type UpdateDocSdkInput, type UpdateEnvVarInput, type UpdateFlagInput, type UpdateFunctionInput, type UpdateOrgProfileInput, type UpdateProfileInput, type UpdateProjectInput, type UpdateRegionInput, type UpdateSubscriptionInput, type UploadFromUrlOptions, type UploadOptions, type UploadPart, type UploadResult$1 as UploadResult, type UpsertOptions, type Usage, type UsageEntry, type User, type UserActivity, type UserMembership, VaifAuthError, type VaifClient, type VaifClientConfig, VaifError, type VaifFunction, VaifNetworkError, VaifNotFoundError, VaifRateLimitError, VaifValidationError, type VerifySignatureOptions, type WebhookConfig, type WebhookDelivery, type WelcomeEvent, type WhereClause, type WhereFilter, type WhereOperator, createVaifClient, isVaifError };