better-auth-mercadopago 0.1.9 → 0.2.1

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.
@@ -0,0 +1,638 @@
1
+ import { z } from "zod";
2
+ import type { MercadoPagoPaymentRecord, MercadoPagoPluginOptions } from "./types";
3
+ export declare const mercadoPagoPlugin: (options: MercadoPagoPluginOptions) => {
4
+ id: "mercadopago";
5
+ schema: {
6
+ mercadoPagoCustomer: {
7
+ fields: {
8
+ id: {
9
+ type: "string";
10
+ required: true;
11
+ };
12
+ userId: {
13
+ type: "string";
14
+ required: true;
15
+ references: {
16
+ model: string;
17
+ field: string;
18
+ onDelete: "cascade";
19
+ };
20
+ };
21
+ mercadoPagoId: {
22
+ type: "string";
23
+ required: true;
24
+ unique: true;
25
+ };
26
+ email: {
27
+ type: "string";
28
+ required: true;
29
+ };
30
+ createdAt: {
31
+ type: "date";
32
+ required: true;
33
+ };
34
+ updatedAt: {
35
+ type: "date";
36
+ required: true;
37
+ };
38
+ };
39
+ };
40
+ mercadoPagoPayment: {
41
+ fields: {
42
+ id: {
43
+ type: "string";
44
+ required: true;
45
+ };
46
+ userId: {
47
+ type: "string";
48
+ required: true;
49
+ references: {
50
+ model: string;
51
+ field: string;
52
+ onDelete: "cascade";
53
+ };
54
+ };
55
+ mercadoPagoPaymentId: {
56
+ type: "string";
57
+ required: true;
58
+ unique: true;
59
+ };
60
+ preferenceId: {
61
+ type: "string";
62
+ required: true;
63
+ };
64
+ status: {
65
+ type: "string";
66
+ required: true;
67
+ };
68
+ statusDetail: {
69
+ type: "string";
70
+ };
71
+ amount: {
72
+ type: "number";
73
+ required: true;
74
+ };
75
+ currency: {
76
+ type: "string";
77
+ required: true;
78
+ };
79
+ paymentMethodId: {
80
+ type: "string";
81
+ };
82
+ paymentTypeId: {
83
+ type: "string";
84
+ };
85
+ metadata: {
86
+ type: "string";
87
+ };
88
+ createdAt: {
89
+ type: "date";
90
+ required: true;
91
+ };
92
+ updatedAt: {
93
+ type: "date";
94
+ required: true;
95
+ };
96
+ };
97
+ };
98
+ mercadoPagoSubscription: {
99
+ fields: {
100
+ id: {
101
+ type: "string";
102
+ required: true;
103
+ };
104
+ userId: {
105
+ type: "string";
106
+ required: true;
107
+ references: {
108
+ model: string;
109
+ field: string;
110
+ onDelete: "cascade";
111
+ };
112
+ };
113
+ mercadoPagoSubscriptionId: {
114
+ type: "string";
115
+ required: true;
116
+ unique: true;
117
+ };
118
+ planId: {
119
+ type: "string";
120
+ required: true;
121
+ };
122
+ status: {
123
+ type: "string";
124
+ required: true;
125
+ };
126
+ reason: {
127
+ type: "string";
128
+ };
129
+ nextPaymentDate: {
130
+ type: "date";
131
+ };
132
+ lastPaymentDate: {
133
+ type: "date";
134
+ };
135
+ summarized: {
136
+ type: "string";
137
+ };
138
+ metadata: {
139
+ type: "string";
140
+ };
141
+ createdAt: {
142
+ type: "date";
143
+ required: true;
144
+ };
145
+ updatedAt: {
146
+ type: "date";
147
+ required: true;
148
+ };
149
+ };
150
+ };
151
+ mercadoPagoPreapprovalPlan: {
152
+ fields: {
153
+ id: {
154
+ type: "string";
155
+ required: true;
156
+ };
157
+ mercadoPagoPlanId: {
158
+ type: "string";
159
+ required: true;
160
+ unique: true;
161
+ };
162
+ reason: {
163
+ type: "string";
164
+ required: true;
165
+ };
166
+ frequency: {
167
+ type: "number";
168
+ required: true;
169
+ };
170
+ frequencyType: {
171
+ type: "string";
172
+ required: true;
173
+ };
174
+ transactionAmount: {
175
+ type: "number";
176
+ required: true;
177
+ };
178
+ currencyId: {
179
+ type: "string";
180
+ required: true;
181
+ };
182
+ repetitions: {
183
+ type: "number";
184
+ };
185
+ freeTrial: {
186
+ type: "string";
187
+ };
188
+ metadata: {
189
+ type: "string";
190
+ };
191
+ createdAt: {
192
+ type: "date";
193
+ required: true;
194
+ };
195
+ updatedAt: {
196
+ type: "date";
197
+ required: true;
198
+ };
199
+ };
200
+ };
201
+ mercadoPagoMarketplaceSplit: {
202
+ fields: {
203
+ id: {
204
+ type: "string";
205
+ required: true;
206
+ };
207
+ paymentId: {
208
+ type: "string";
209
+ required: true;
210
+ references: {
211
+ model: string;
212
+ field: string;
213
+ onDelete: "cascade";
214
+ };
215
+ };
216
+ collectorId: {
217
+ type: "string";
218
+ required: true;
219
+ };
220
+ collectorEmail: {
221
+ type: "string";
222
+ required: true;
223
+ };
224
+ applicationFeeAmount: {
225
+ type: "number";
226
+ };
227
+ applicationFeePercentage: {
228
+ type: "number";
229
+ };
230
+ netAmount: {
231
+ type: "number";
232
+ required: true;
233
+ };
234
+ metadata: {
235
+ type: "string";
236
+ };
237
+ createdAt: {
238
+ type: "date";
239
+ required: true;
240
+ };
241
+ };
242
+ };
243
+ mercadoPagoOAuthToken: {
244
+ fields: {
245
+ id: {
246
+ type: "string";
247
+ required: true;
248
+ };
249
+ userId: {
250
+ type: "string";
251
+ required: true;
252
+ references: {
253
+ model: string;
254
+ field: string;
255
+ onDelete: "cascade";
256
+ };
257
+ };
258
+ accessToken: {
259
+ type: "string";
260
+ required: true;
261
+ };
262
+ refreshToken: {
263
+ type: "string";
264
+ required: true;
265
+ };
266
+ publicKey: {
267
+ type: "string";
268
+ required: true;
269
+ };
270
+ mercadoPagoUserId: {
271
+ type: "string";
272
+ required: true;
273
+ unique: true;
274
+ };
275
+ expiresAt: {
276
+ type: "date";
277
+ required: true;
278
+ };
279
+ createdAt: {
280
+ type: "date";
281
+ required: true;
282
+ };
283
+ updatedAt: {
284
+ type: "date";
285
+ required: true;
286
+ };
287
+ };
288
+ };
289
+ };
290
+ endpoints: {
291
+ getOrCreateCustomer: import("better-auth").StrictEndpoint<"/mercado-pago/customer", {
292
+ method: "POST";
293
+ requireAuth: boolean;
294
+ body: z.ZodObject<{
295
+ email: z.ZodOptional<z.ZodString>;
296
+ firstName: z.ZodOptional<z.ZodString>;
297
+ lastName: z.ZodOptional<z.ZodString>;
298
+ }, "strip", z.ZodTypeAny, {
299
+ email?: string | undefined;
300
+ firstName?: string | undefined;
301
+ lastName?: string | undefined;
302
+ }, {
303
+ email?: string | undefined;
304
+ firstName?: string | undefined;
305
+ lastName?: string | undefined;
306
+ }>;
307
+ }, {
308
+ customer: {};
309
+ }>;
310
+ getOAuthUrl: import("better-auth").StrictEndpoint<"/mercado-pago/oauth/authorize", {
311
+ method: "GET";
312
+ requireAuth: boolean;
313
+ query: z.ZodObject<{
314
+ redirectUri: z.ZodString;
315
+ }, "strip", z.ZodTypeAny, {
316
+ redirectUri: string;
317
+ }, {
318
+ redirectUri: string;
319
+ }>;
320
+ }, {
321
+ authUrl: string;
322
+ }>;
323
+ exchangeOAuthCode: import("better-auth").StrictEndpoint<"/mercado-pago/oauth/callback", {
324
+ method: "POST";
325
+ requireAuth: boolean;
326
+ body: z.ZodObject<{
327
+ code: z.ZodString;
328
+ redirectUri: z.ZodString;
329
+ }, "strip", z.ZodTypeAny, {
330
+ code: string;
331
+ redirectUri: string;
332
+ }, {
333
+ code: string;
334
+ redirectUri: string;
335
+ }>;
336
+ }, {
337
+ success: boolean;
338
+ oauthToken: {
339
+ id: any;
340
+ mercadoPagoUserId: any;
341
+ expiresAt: any;
342
+ };
343
+ }>;
344
+ createPreapprovalPlan: import("better-auth").StrictEndpoint<"/mercado-pago/plan/create", {
345
+ method: "POST";
346
+ body: z.ZodObject<{
347
+ reason: z.ZodString;
348
+ autoRecurring: z.ZodObject<{
349
+ frequency: z.ZodNumber;
350
+ frequencyType: z.ZodEnum<["days", "months"]>;
351
+ transactionAmount: z.ZodNumber;
352
+ currencyId: z.ZodDefault<z.ZodString>;
353
+ freeTrial: z.ZodOptional<z.ZodObject<{
354
+ frequency: z.ZodNumber;
355
+ frequencyType: z.ZodEnum<["days", "months"]>;
356
+ }, "strip", z.ZodTypeAny, {
357
+ frequency: number;
358
+ frequencyType: "days" | "months";
359
+ }, {
360
+ frequency: number;
361
+ frequencyType: "days" | "months";
362
+ }>>;
363
+ }, "strip", z.ZodTypeAny, {
364
+ frequency: number;
365
+ frequencyType: "days" | "months";
366
+ transactionAmount: number;
367
+ currencyId: string;
368
+ freeTrial?: {
369
+ frequency: number;
370
+ frequencyType: "days" | "months";
371
+ } | undefined;
372
+ }, {
373
+ frequency: number;
374
+ frequencyType: "days" | "months";
375
+ transactionAmount: number;
376
+ currencyId?: string | undefined;
377
+ freeTrial?: {
378
+ frequency: number;
379
+ frequencyType: "days" | "months";
380
+ } | undefined;
381
+ }>;
382
+ repetitions: z.ZodOptional<z.ZodNumber>;
383
+ backUrl: z.ZodOptional<z.ZodString>;
384
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
385
+ }, "strip", z.ZodTypeAny, {
386
+ reason: string;
387
+ autoRecurring: {
388
+ frequency: number;
389
+ frequencyType: "days" | "months";
390
+ transactionAmount: number;
391
+ currencyId: string;
392
+ freeTrial?: {
393
+ frequency: number;
394
+ frequencyType: "days" | "months";
395
+ } | undefined;
396
+ };
397
+ metadata?: Record<string, any> | undefined;
398
+ repetitions?: number | undefined;
399
+ backUrl?: string | undefined;
400
+ }, {
401
+ reason: string;
402
+ autoRecurring: {
403
+ frequency: number;
404
+ frequencyType: "days" | "months";
405
+ transactionAmount: number;
406
+ currencyId?: string | undefined;
407
+ freeTrial?: {
408
+ frequency: number;
409
+ frequencyType: "days" | "months";
410
+ } | undefined;
411
+ };
412
+ metadata?: Record<string, any> | undefined;
413
+ repetitions?: number | undefined;
414
+ backUrl?: string | undefined;
415
+ }>;
416
+ }, {
417
+ plan: Record<string, any>;
418
+ }>;
419
+ listPreapprovalPlans: import("better-auth").StrictEndpoint<"/mercado-pago/plans", {
420
+ method: "GET";
421
+ }, {
422
+ plans: unknown[];
423
+ }>;
424
+ createPayment: import("better-auth").StrictEndpoint<"/mercado-pago/payment/create", {
425
+ method: "POST";
426
+ requireAuth: boolean;
427
+ body: z.ZodObject<{
428
+ items: z.ZodArray<z.ZodObject<{
429
+ id: z.ZodString;
430
+ title: z.ZodString;
431
+ quantity: z.ZodNumber;
432
+ unitPrice: z.ZodNumber;
433
+ currencyId: z.ZodDefault<z.ZodString>;
434
+ }, "strip", z.ZodTypeAny, {
435
+ id: string;
436
+ currencyId: string;
437
+ title: string;
438
+ quantity: number;
439
+ unitPrice: number;
440
+ }, {
441
+ id: string;
442
+ title: string;
443
+ quantity: number;
444
+ unitPrice: number;
445
+ currencyId?: string | undefined;
446
+ }>, "many">;
447
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
448
+ marketplace: z.ZodOptional<z.ZodObject<{
449
+ collectorId: z.ZodString;
450
+ applicationFee: z.ZodOptional<z.ZodNumber>;
451
+ applicationFeePercentage: z.ZodOptional<z.ZodNumber>;
452
+ }, "strip", z.ZodTypeAny, {
453
+ collectorId: string;
454
+ applicationFeePercentage?: number | undefined;
455
+ applicationFee?: number | undefined;
456
+ }, {
457
+ collectorId: string;
458
+ applicationFeePercentage?: number | undefined;
459
+ applicationFee?: number | undefined;
460
+ }>>;
461
+ successUrl: z.ZodOptional<z.ZodString>;
462
+ failureUrl: z.ZodOptional<z.ZodString>;
463
+ pendingUrl: z.ZodOptional<z.ZodString>;
464
+ idempotencyKey: z.ZodOptional<z.ZodString>;
465
+ }, "strip", z.ZodTypeAny, {
466
+ items: {
467
+ id: string;
468
+ currencyId: string;
469
+ title: string;
470
+ quantity: number;
471
+ unitPrice: number;
472
+ }[];
473
+ metadata?: Record<string, any> | undefined;
474
+ marketplace?: {
475
+ collectorId: string;
476
+ applicationFeePercentage?: number | undefined;
477
+ applicationFee?: number | undefined;
478
+ } | undefined;
479
+ successUrl?: string | undefined;
480
+ failureUrl?: string | undefined;
481
+ pendingUrl?: string | undefined;
482
+ idempotencyKey?: string | undefined;
483
+ }, {
484
+ items: {
485
+ id: string;
486
+ title: string;
487
+ quantity: number;
488
+ unitPrice: number;
489
+ currencyId?: string | undefined;
490
+ }[];
491
+ metadata?: Record<string, any> | undefined;
492
+ marketplace?: {
493
+ collectorId: string;
494
+ applicationFeePercentage?: number | undefined;
495
+ applicationFee?: number | undefined;
496
+ } | undefined;
497
+ successUrl?: string | undefined;
498
+ failureUrl?: string | undefined;
499
+ pendingUrl?: string | undefined;
500
+ idempotencyKey?: string | undefined;
501
+ }>;
502
+ }, any>;
503
+ createSubscription: import("better-auth").StrictEndpoint<"/mercado-pago/subscription/create", {
504
+ method: "POST";
505
+ requireAuth: boolean;
506
+ body: z.ZodObject<{
507
+ preapprovalPlanId: z.ZodOptional<z.ZodString>;
508
+ reason: z.ZodOptional<z.ZodString>;
509
+ autoRecurring: z.ZodOptional<z.ZodObject<{
510
+ frequency: z.ZodNumber;
511
+ frequencyType: z.ZodEnum<["days", "months"]>;
512
+ transactionAmount: z.ZodNumber;
513
+ currencyId: z.ZodDefault<z.ZodString>;
514
+ startDate: z.ZodOptional<z.ZodString>;
515
+ endDate: z.ZodOptional<z.ZodString>;
516
+ freeTrial: z.ZodOptional<z.ZodObject<{
517
+ frequency: z.ZodNumber;
518
+ frequencyType: z.ZodEnum<["days", "months"]>;
519
+ }, "strip", z.ZodTypeAny, {
520
+ frequency: number;
521
+ frequencyType: "days" | "months";
522
+ }, {
523
+ frequency: number;
524
+ frequencyType: "days" | "months";
525
+ }>>;
526
+ }, "strip", z.ZodTypeAny, {
527
+ frequency: number;
528
+ frequencyType: "days" | "months";
529
+ transactionAmount: number;
530
+ currencyId: string;
531
+ freeTrial?: {
532
+ frequency: number;
533
+ frequencyType: "days" | "months";
534
+ } | undefined;
535
+ startDate?: string | undefined;
536
+ endDate?: string | undefined;
537
+ }, {
538
+ frequency: number;
539
+ frequencyType: "days" | "months";
540
+ transactionAmount: number;
541
+ currencyId?: string | undefined;
542
+ freeTrial?: {
543
+ frequency: number;
544
+ frequencyType: "days" | "months";
545
+ } | undefined;
546
+ startDate?: string | undefined;
547
+ endDate?: string | undefined;
548
+ }>>;
549
+ backUrl: z.ZodOptional<z.ZodString>;
550
+ metadata: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
551
+ }, "strip", z.ZodTypeAny, {
552
+ metadata?: Record<string, any> | undefined;
553
+ reason?: string | undefined;
554
+ autoRecurring?: {
555
+ frequency: number;
556
+ frequencyType: "days" | "months";
557
+ transactionAmount: number;
558
+ currencyId: string;
559
+ freeTrial?: {
560
+ frequency: number;
561
+ frequencyType: "days" | "months";
562
+ } | undefined;
563
+ startDate?: string | undefined;
564
+ endDate?: string | undefined;
565
+ } | undefined;
566
+ backUrl?: string | undefined;
567
+ preapprovalPlanId?: string | undefined;
568
+ }, {
569
+ metadata?: Record<string, any> | undefined;
570
+ reason?: string | undefined;
571
+ autoRecurring?: {
572
+ frequency: number;
573
+ frequencyType: "days" | "months";
574
+ transactionAmount: number;
575
+ currencyId?: string | undefined;
576
+ freeTrial?: {
577
+ frequency: number;
578
+ frequencyType: "days" | "months";
579
+ } | undefined;
580
+ startDate?: string | undefined;
581
+ endDate?: string | undefined;
582
+ } | undefined;
583
+ backUrl?: string | undefined;
584
+ preapprovalPlanId?: string | undefined;
585
+ }>;
586
+ }, {
587
+ checkoutUrl: string | undefined;
588
+ subscription: Record<string, any>;
589
+ }>;
590
+ cancelSubscription: import("better-auth").StrictEndpoint<"/mercado-pago/subscription/cancel", {
591
+ method: "POST";
592
+ requireAuth: boolean;
593
+ body: z.ZodObject<{
594
+ subscriptionId: z.ZodString;
595
+ }, "strip", z.ZodTypeAny, {
596
+ subscriptionId: string;
597
+ }, {
598
+ subscriptionId: string;
599
+ }>;
600
+ }, {
601
+ success: boolean;
602
+ }>;
603
+ getPayment: import("better-auth").StrictEndpoint<"/mercado-pago/payment/:id", {
604
+ method: "GET";
605
+ requireAuth: boolean;
606
+ }, {
607
+ payment: MercadoPagoPaymentRecord;
608
+ }>;
609
+ listPayments: import("better-auth").StrictEndpoint<"/mercado-pago/payments", {
610
+ method: "GET";
611
+ requireAuth: boolean;
612
+ query: z.ZodObject<{
613
+ limit: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
614
+ offset: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
615
+ }, "strip", z.ZodTypeAny, {
616
+ limit: number;
617
+ offset: number;
618
+ }, {
619
+ limit?: number | undefined;
620
+ offset?: number | undefined;
621
+ }>;
622
+ }, {
623
+ payments: unknown[];
624
+ }>;
625
+ listSubscriptions: import("better-auth").StrictEndpoint<"/mercado-pago/subscriptions", {
626
+ method: "GET";
627
+ requireAuth: boolean;
628
+ }, {
629
+ subscriptions: unknown[];
630
+ }>;
631
+ webhook: import("better-auth").StrictEndpoint<"/mercado-pago/webhook", {
632
+ method: "POST";
633
+ }, {
634
+ received: boolean;
635
+ }>;
636
+ };
637
+ };
638
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAaxB,OAAO,KAAK,EAEX,wBAAwB,EAExB,wBAAwB,EAGxB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,iBAAiB,GAAI,SAAS,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAszClE,CAAC"}