File size: 9,115 Bytes
97ee7cb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
/* eslint-disable */
/**
 * Generated `api` utility.
 *
 * THIS CODE IS AUTOMATICALLY GENERATED.
 *
 * To regenerate, run `npx convex dev`.
 * @module
 */

import type * as alertRules from "../alertRules.js";
import type * as apiKeys from "../apiKeys.js";
import type * as apiPlanLimitEmails from "../apiPlanLimitEmails.js";
import type * as apiPlanLimitNotices from "../apiPlanLimitNotices.js";
import type * as apiPlanLimitUsage from "../apiPlanLimitUsage.js";
import type * as broadcast__localeHeuristic from "../broadcast/_localeHeuristic.js";
import type * as broadcast__poolSelection from "../broadcast/_poolSelection.js";
import type * as broadcast__resendContacts from "../broadcast/_resendContacts.js";
import type * as broadcast_audienceExport from "../broadcast/audienceExport.js";
import type * as broadcast_audienceWaveExport from "../broadcast/audienceWaveExport.js";
import type * as broadcast_backfillCanaryWaveStamps from "../broadcast/backfillCanaryWaveStamps.js";
import type * as broadcast_metrics from "../broadcast/metrics.js";
import type * as broadcast_proLaunchEmailContent from "../broadcast/proLaunchEmailContent.js";
import type * as broadcast_rampRunner from "../broadcast/rampRunner.js";
import type * as broadcast_sendBroadcast from "../broadcast/sendBroadcast.js";
import type * as broadcast_waveRuns from "../broadcast/waveRuns.js";
import type * as config_productCatalog from "../config/productCatalog.js";
import type * as constants from "../constants.js";
import type * as contactMessages from "../contactMessages.js";
import type * as crons from "../crons.js";
import type * as emailSuppressions from "../emailSuppressions.js";
import type * as entitlements from "../entitlements.js";
import type * as followedCountries from "../followedCountries.js";
import type * as http from "../http.js";
import type * as intelHistory from "../intelHistory.js";
import type * as lib_auth from "../lib/auth.js";
import type * as lib_dodo from "../lib/dodo.js";
import type * as lib_emailDomain from "../lib/emailDomain.js";
import type * as lib_entitlements from "../lib/entitlements.js";
import type * as lib_env from "../lib/env.js";
import type * as lib_identitySigning from "../lib/identitySigning.js";
import type * as lib_iso2 from "../lib/iso2.js";
import type * as lib_shards from "../lib/shards.js";
import type * as mcpProTokens from "../mcpProTokens.js";
import type * as notificationChannels from "../notificationChannels.js";
import type * as payments_backfillCustomerNormalizedEmail from "../payments/backfillCustomerNormalizedEmail.js";
import type * as payments_billing from "../payments/billing.js";
import type * as payments_businessSeats from "../payments/businessSeats.js";
import type * as payments_cacheActions from "../payments/cacheActions.js";
import type * as payments_checkout from "../payments/checkout.js";
import type * as payments_seedProductPlans from "../payments/seedProductPlans.js";
import type * as payments_subscriptionEmails from "../payments/subscriptionEmails.js";
import type * as payments_subscriptionHelpers from "../payments/subscriptionHelpers.js";
import type * as payments_webhookHandlers from "../payments/webhookHandlers.js";
import type * as payments_webhookMutations from "../payments/webhookMutations.js";
import type * as registerInterest from "../registerInterest.js";
import type * as resendWebhookHandler from "../resendWebhookHandler.js";
import type * as telegramPairingTokens from "../telegramPairingTokens.js";
import type * as userPreferences from "../userPreferences.js";
import type * as users from "../users.js";

import type {
  ApiFromModules,
  FilterApi,
  FunctionReference,
} from "convex/server";

declare const fullApi: ApiFromModules<{
  alertRules: typeof alertRules;
  apiKeys: typeof apiKeys;
  apiPlanLimitEmails: typeof apiPlanLimitEmails;
  apiPlanLimitNotices: typeof apiPlanLimitNotices;
  apiPlanLimitUsage: typeof apiPlanLimitUsage;
  "broadcast/_localeHeuristic": typeof broadcast__localeHeuristic;
  "broadcast/_poolSelection": typeof broadcast__poolSelection;
  "broadcast/_resendContacts": typeof broadcast__resendContacts;
  "broadcast/audienceExport": typeof broadcast_audienceExport;
  "broadcast/audienceWaveExport": typeof broadcast_audienceWaveExport;
  "broadcast/backfillCanaryWaveStamps": typeof broadcast_backfillCanaryWaveStamps;
  "broadcast/metrics": typeof broadcast_metrics;
  "broadcast/proLaunchEmailContent": typeof broadcast_proLaunchEmailContent;
  "broadcast/rampRunner": typeof broadcast_rampRunner;
  "broadcast/sendBroadcast": typeof broadcast_sendBroadcast;
  "broadcast/waveRuns": typeof broadcast_waveRuns;
  "config/productCatalog": typeof config_productCatalog;
  constants: typeof constants;
  contactMessages: typeof contactMessages;
  crons: typeof crons;
  emailSuppressions: typeof emailSuppressions;
  entitlements: typeof entitlements;
  followedCountries: typeof followedCountries;
  http: typeof http;
  intelHistory: typeof intelHistory;
  "lib/auth": typeof lib_auth;
  "lib/dodo": typeof lib_dodo;
  "lib/emailDomain": typeof lib_emailDomain;
  "lib/entitlements": typeof lib_entitlements;
  "lib/env": typeof lib_env;
  "lib/identitySigning": typeof lib_identitySigning;
  "lib/iso2": typeof lib_iso2;
  "lib/shards": typeof lib_shards;
  mcpProTokens: typeof mcpProTokens;
  notificationChannels: typeof notificationChannels;
  "payments/backfillCustomerNormalizedEmail": typeof payments_backfillCustomerNormalizedEmail;
  "payments/billing": typeof payments_billing;
  "payments/businessSeats": typeof payments_businessSeats;
  "payments/cacheActions": typeof payments_cacheActions;
  "payments/checkout": typeof payments_checkout;
  "payments/seedProductPlans": typeof payments_seedProductPlans;
  "payments/subscriptionEmails": typeof payments_subscriptionEmails;
  "payments/subscriptionHelpers": typeof payments_subscriptionHelpers;
  "payments/webhookHandlers": typeof payments_webhookHandlers;
  "payments/webhookMutations": typeof payments_webhookMutations;
  registerInterest: typeof registerInterest;
  resendWebhookHandler: typeof resendWebhookHandler;
  telegramPairingTokens: typeof telegramPairingTokens;
  userPreferences: typeof userPreferences;
  users: typeof users;
}>;

/**
 * A utility for referencing Convex functions in your app's public API.
 *
 * Usage:
 * ```js
 * const myFunctionReference = api.myModule.myFunction;
 * ```
 */
export declare const api: FilterApi<
  typeof fullApi,
  FunctionReference<any, "public">
>;

/**
 * A utility for referencing Convex functions in your app's internal API.
 *
 * Usage:
 * ```js
 * const myFunctionReference = internal.myModule.myFunction;
 * ```
 */
export declare const internal: FilterApi<
  typeof fullApi,
  FunctionReference<any, "internal">
>;

export declare const components: {
  dodopayments: {
    lib: {
      checkout: FunctionReference<
        "action",
        "internal",
        {
          apiKey: string;
          environment: "test_mode" | "live_mode";
          payload: {
            allowed_payment_method_types?: Array<string>;
            billing_address?: {
              city?: string;
              country: string;
              state?: string;
              street?: string;
              zipcode?: string;
            };
            billing_currency?: string;
            confirm?: boolean;
            customer?:
              | { email: string; name?: string; phone_number?: string }
              | { customer_id: string };
            customization?: {
              force_language?: string;
              show_on_demand_tag?: boolean;
              show_order_details?: boolean;
              theme?: string;
            };
            discount_code?: string;
            feature_flags?: {
              allow_currency_selection?: boolean;
              allow_discount_code?: boolean;
              allow_phone_number_collection?: boolean;
              allow_tax_id?: boolean;
              always_create_new_customer?: boolean;
            };
            force_3ds?: boolean;
            metadata?: Record<string, string>;
            product_cart: Array<{
              addons?: Array<{ addon_id: string; quantity: number }>;
              amount?: number;
              product_id: string;
              quantity: number;
            }>;
            return_url?: string;
            show_saved_payment_methods?: boolean;
            subscription_data?: {
              on_demand?: {
                adaptive_currency_fees_inclusive?: boolean;
                mandate_only: boolean;
                product_currency?: string;
                product_description?: string;
                product_price?: number;
              };
              trial_period_days?: number;
            };
          };
        },
        { checkout_url: string }
      >;
      customerPortal: FunctionReference<
        "action",
        "internal",
        {
          apiKey: string;
          dodoCustomerId: string;
          environment: "test_mode" | "live_mode";
          send_email?: boolean;
        },
        { portal_url: string }
      >;
    };
  };
};