@duvdu-v1/duvdu 1.1.264 → 1.1.266
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/build/index.d.ts +1 -0
- package/build/index.js +1 -0
- package/build/models/Bookmark-projects.model.d.ts +2 -2
- package/build/models/Bookmark.model.d.ts +1 -1
- package/build/models/Plan.model.d.ts +1 -1
- package/build/models/Review.model.d.ts +2 -2
- package/build/models/Role.model.d.ts +1 -1
- package/build/models/Term.model.d.ts +3 -3
- package/build/models/Ticket.model.d.ts +3 -3
- package/build/models/User.model.d.ts +1 -1
- package/build/models/all-contracts.model.d.ts +2 -2
- package/build/models/allProjects.model.d.ts +1 -1
- package/build/models/category.model.d.ts +3 -3
- package/build/models/contractCancel.model.d.ts +2 -2
- package/build/models/contractCancel.model.js +4 -4
- package/build/models/contracts.model.d.ts +2 -2
- package/build/models/copyright-contract.model.d.ts +2 -2
- package/build/models/copyrights-booking.model.d.ts +2 -2
- package/build/models/copyrights.model.d.ts +2 -2
- package/build/models/coupon.model.d.ts +2 -2
- package/build/models/favourites.model.d.ts +2 -2
- package/build/models/follow.model.d.ts +2 -2
- package/build/models/messages.model.d.ts +2 -2
- package/build/models/notification.model.d.ts +2 -2
- package/build/models/portfolio-post.model.d.ts +2 -2
- package/build/models/producer.model.d.ts +2 -2
- package/build/models/producerPlatform.model.d.ts +1 -1
- package/build/models/producer_contracts.model.d.ts +2 -2
- package/build/models/projectContract.model.d.ts +2 -2
- package/build/models/projectViews.model.d.ts +1 -1
- package/build/models/ranks.model.d.ts +1 -1
- package/build/models/rental-contracts.model.d.ts +2 -2
- package/build/models/rental.model.d.ts +2 -2
- package/build/models/report.model.d.ts +2 -2
- package/build/models/session.model.d.ts +2 -2
- package/build/models/settings.model.d.ts +1 -1
- package/build/models/studio-booking-book.model.d.ts +2 -2
- package/build/models/studio-booking.model.d.ts +3 -3
- package/build/models/teamProject.model.d.ts +3 -3
- package/build/models/transactions.model.d.ts +2 -2
- package/build/models/userSession.model.d.ts +2 -2
- package/build/models/withdrawMethods.model.d.ts +2 -2
- package/build/models/withdrawMethods.model.js +3 -3
- package/build/services/paymob.service.d.ts +203 -0
- package/build/services/paymob.service.js +346 -0
- package/build/services/rank.service.d.ts +2 -2
- package/build/types/Bookmarks.d.ts +1 -1
- package/build/types/Plan.d.ts +1 -1
- package/build/types/Projects.d.ts +1 -1
- package/build/types/Rate.d.ts +1 -1
- package/build/types/Ticket.d.ts +1 -1
- package/build/types/User.d.ts +1 -1
- package/build/types/copyrights-order.d.ts +2 -2
- package/build/types/portfolio-post-order.d.ts +2 -2
- package/build/utils/api-feature.d.ts +3 -3
- package/package.json +2 -1
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/document" />
|
|
2
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
3
2
|
/// <reference types="mongoose/types/callback" />
|
|
4
3
|
/// <reference types="mongoose/types/collection" />
|
|
5
4
|
/// <reference types="mongoose/types/connection" />
|
|
6
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
7
7
|
/// <reference types="mongoose/types/error" />
|
|
8
8
|
/// <reference types="mongoose/types/expressions" />
|
|
9
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
|
-
/// <reference types="mongoose/types/models" />
|
|
4
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
5
2
|
/// <reference types="mongoose/types/callback" />
|
|
6
3
|
/// <reference types="mongoose/types/collection" />
|
|
7
4
|
/// <reference types="mongoose/types/connection" />
|
|
8
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
9
7
|
/// <reference types="mongoose/types/error" />
|
|
10
8
|
/// <reference types="mongoose/types/expressions" />
|
|
11
9
|
/// <reference types="mongoose/types/helpers" />
|
|
12
10
|
/// <reference types="mongoose/types/middlewares" />
|
|
13
11
|
/// <reference types="mongoose/types/indexes" />
|
|
12
|
+
/// <reference types="mongoose/types/models" />
|
|
14
13
|
/// <reference types="mongoose/types/mongooseoptions" />
|
|
15
14
|
/// <reference types="mongoose/types/pipelinestage" />
|
|
16
15
|
/// <reference types="mongoose/types/populate" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,13 +17,14 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
24
24
|
/// <reference types="mongoose/types/inferschematype" />
|
|
25
|
-
import { Icategory } from '@duvdu-v1/duvdu';
|
|
26
25
|
import { Types } from 'mongoose';
|
|
27
26
|
import { IprojectContract } from './projectContract.model';
|
|
27
|
+
import { Icategory } from '../types/Category';
|
|
28
28
|
import { Iuser } from '../types/User';
|
|
29
29
|
export interface ITeamProject {
|
|
30
30
|
user: Types.ObjectId | Iuser;
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
/// <reference types="mongoose/types/types" />
|
|
2
|
-
/// <reference types="mongoose/types/document" />
|
|
3
1
|
/// <reference types="mongoose/types/aggregate" />
|
|
4
2
|
/// <reference types="mongoose/types/callback" />
|
|
5
3
|
/// <reference types="mongoose/types/collection" />
|
|
6
4
|
/// <reference types="mongoose/types/connection" />
|
|
7
5
|
/// <reference types="mongoose/types/cursor" />
|
|
6
|
+
/// <reference types="mongoose/types/document" />
|
|
8
7
|
/// <reference types="mongoose/types/error" />
|
|
9
8
|
/// <reference types="mongoose/types/expressions" />
|
|
10
9
|
/// <reference types="mongoose/types/helpers" />
|
|
@@ -18,6 +17,7 @@
|
|
|
18
17
|
/// <reference types="mongoose/types/schemaoptions" />
|
|
19
18
|
/// <reference types="mongoose/types/schematypes" />
|
|
20
19
|
/// <reference types="mongoose/types/session" />
|
|
20
|
+
/// <reference types="mongoose/types/types" />
|
|
21
21
|
/// <reference types="mongoose/types/utility" />
|
|
22
22
|
/// <reference types="mongoose/types/validation" />
|
|
23
23
|
/// <reference types="mongoose/types/virtuals" />
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.WithdrawMethodModel = exports.WithdrawMethod = void 0;
|
|
4
|
-
const duvdu_1 = require("@duvdu-v1/duvdu");
|
|
5
4
|
const mongoose_1 = require("mongoose");
|
|
5
|
+
const model_names_1 = require("../types/model-names");
|
|
6
6
|
var WithdrawMethod;
|
|
7
7
|
(function (WithdrawMethod) {
|
|
8
8
|
WithdrawMethod["WALLET"] = "wallet";
|
|
9
9
|
WithdrawMethod["BANK"] = "bank";
|
|
10
10
|
})(WithdrawMethod || (exports.WithdrawMethod = WithdrawMethod = {}));
|
|
11
|
-
exports.WithdrawMethodModel = (0, mongoose_1.model)(
|
|
12
|
-
user: { type: mongoose_1.Schema.Types.ObjectId, ref:
|
|
11
|
+
exports.WithdrawMethodModel = (0, mongoose_1.model)(model_names_1.MODELS.withdrawMethod, new mongoose_1.Schema({
|
|
12
|
+
user: { type: mongoose_1.Schema.Types.ObjectId, ref: model_names_1.MODELS.user },
|
|
13
13
|
method: { type: String, enum: WithdrawMethod },
|
|
14
14
|
name: { type: String, default: null },
|
|
15
15
|
number: { type: String, default: null },
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
interface PaymobMerchant {
|
|
2
|
+
id: number;
|
|
3
|
+
created_at: string;
|
|
4
|
+
phones: string[];
|
|
5
|
+
company_emails: string[];
|
|
6
|
+
company_name: string;
|
|
7
|
+
state: string;
|
|
8
|
+
country: string;
|
|
9
|
+
city: string;
|
|
10
|
+
postal_code: string;
|
|
11
|
+
street: string;
|
|
12
|
+
}
|
|
13
|
+
interface PaymobOrder {
|
|
14
|
+
id: number;
|
|
15
|
+
created_at: string;
|
|
16
|
+
delivery_needed: boolean;
|
|
17
|
+
merchant: PaymobMerchant;
|
|
18
|
+
collector: null;
|
|
19
|
+
amount_cents: number;
|
|
20
|
+
shipping_data: null;
|
|
21
|
+
currency: string;
|
|
22
|
+
is_payment_locked: boolean;
|
|
23
|
+
is_return: boolean;
|
|
24
|
+
is_cancel: boolean;
|
|
25
|
+
is_returned: boolean;
|
|
26
|
+
is_canceled: boolean;
|
|
27
|
+
merchant_order_id: string;
|
|
28
|
+
wallet_notification: null;
|
|
29
|
+
paid_amount_cents: number;
|
|
30
|
+
notify_user_with_email: boolean;
|
|
31
|
+
items: PaymobOrderItem[];
|
|
32
|
+
order_url: string;
|
|
33
|
+
commission_fee: number;
|
|
34
|
+
delivery_fee_cents: number;
|
|
35
|
+
delivery_voucher_cost: number;
|
|
36
|
+
discount: number;
|
|
37
|
+
metadata: Record<string, any>;
|
|
38
|
+
}
|
|
39
|
+
interface PaymobOrderItem {
|
|
40
|
+
name: string;
|
|
41
|
+
description: string;
|
|
42
|
+
amount: number;
|
|
43
|
+
quantity: number;
|
|
44
|
+
}
|
|
45
|
+
interface PaymobSourceData {
|
|
46
|
+
type: string;
|
|
47
|
+
pan: string;
|
|
48
|
+
sub_type: string;
|
|
49
|
+
}
|
|
50
|
+
interface PaymobWebhookData {
|
|
51
|
+
obj: {
|
|
52
|
+
id: number;
|
|
53
|
+
amount_cents: number;
|
|
54
|
+
success: boolean;
|
|
55
|
+
is_refunded: boolean;
|
|
56
|
+
is_captured: boolean;
|
|
57
|
+
is_voided: boolean;
|
|
58
|
+
is_standalone_payment: boolean;
|
|
59
|
+
is_void: boolean;
|
|
60
|
+
is_refund: boolean;
|
|
61
|
+
is_3d_secure: boolean;
|
|
62
|
+
integration_id: number;
|
|
63
|
+
profile_id: number;
|
|
64
|
+
has_parent_transaction: boolean;
|
|
65
|
+
order: PaymobOrder;
|
|
66
|
+
created_at: string;
|
|
67
|
+
transaction_processed_callback_responses: null;
|
|
68
|
+
currency: string;
|
|
69
|
+
source_data: PaymobSourceData;
|
|
70
|
+
api_source: string;
|
|
71
|
+
terminal_id: string;
|
|
72
|
+
merchant_commission: number;
|
|
73
|
+
merchant_staff_tag: null;
|
|
74
|
+
hmac: string;
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
interface PaymobBillingData {
|
|
78
|
+
first_name: string;
|
|
79
|
+
last_name: string;
|
|
80
|
+
email: string;
|
|
81
|
+
phone_number: string;
|
|
82
|
+
apartment: string;
|
|
83
|
+
floor: string;
|
|
84
|
+
street: string;
|
|
85
|
+
building: string;
|
|
86
|
+
city?: string;
|
|
87
|
+
state: string;
|
|
88
|
+
country: string;
|
|
89
|
+
}
|
|
90
|
+
interface TransactionData {
|
|
91
|
+
orderId: number;
|
|
92
|
+
amount: number;
|
|
93
|
+
success: boolean;
|
|
94
|
+
currency: string;
|
|
95
|
+
transactionId: number;
|
|
96
|
+
createdAt: string;
|
|
97
|
+
isRefunded: boolean;
|
|
98
|
+
isCaptured: boolean;
|
|
99
|
+
isVoided: boolean;
|
|
100
|
+
metadata: Record<string, any>;
|
|
101
|
+
}
|
|
102
|
+
interface WebhookQueryTransactionData extends TransactionData {
|
|
103
|
+
isAuth: boolean;
|
|
104
|
+
isStandalone: boolean;
|
|
105
|
+
is3dSecure: boolean;
|
|
106
|
+
sourceData: {
|
|
107
|
+
type: string;
|
|
108
|
+
pan: string;
|
|
109
|
+
subType: string;
|
|
110
|
+
};
|
|
111
|
+
responseCode: string;
|
|
112
|
+
message: string;
|
|
113
|
+
}
|
|
114
|
+
interface WebhookQueryWithItemsTransactionData extends WebhookQueryTransactionData {
|
|
115
|
+
items: PaymobOrderItem[];
|
|
116
|
+
}
|
|
117
|
+
interface WebhookResult<T> {
|
|
118
|
+
isValid: boolean;
|
|
119
|
+
transactionData: T | null;
|
|
120
|
+
}
|
|
121
|
+
interface TransactionStatusResult {
|
|
122
|
+
success: boolean;
|
|
123
|
+
status: string;
|
|
124
|
+
amount: number;
|
|
125
|
+
currency: string;
|
|
126
|
+
}
|
|
127
|
+
interface OrderDetailsResult {
|
|
128
|
+
id: number;
|
|
129
|
+
amount_cents: number;
|
|
130
|
+
currency: string;
|
|
131
|
+
items: PaymobOrderItem[];
|
|
132
|
+
created_at: string;
|
|
133
|
+
merchant_order_id: string;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Paymob Service Configuration for Flash Integration
|
|
137
|
+
*
|
|
138
|
+
* Required Keys:
|
|
139
|
+
* - secretKey: Your Paymob Secret Key (for API authentication)
|
|
140
|
+
* - publicKey: Your Paymob Public Key (for client-side)
|
|
141
|
+
* - integrationId: Your Paymob Integration ID
|
|
142
|
+
* - hmacSecret: Your Paymob HMAC Secret (for webhook verification)
|
|
143
|
+
*/
|
|
144
|
+
export declare class PaymobService {
|
|
145
|
+
private readonly secretKey;
|
|
146
|
+
private readonly publicKey;
|
|
147
|
+
private readonly integrationId;
|
|
148
|
+
private readonly baseUrl;
|
|
149
|
+
private readonly hmacSecret;
|
|
150
|
+
constructor();
|
|
151
|
+
/**
|
|
152
|
+
* Creates a payment intention using the Flash API
|
|
153
|
+
* @param amount The payment amount
|
|
154
|
+
* @param billingData The user data for billing
|
|
155
|
+
* @param items The order items
|
|
156
|
+
* @param currency The currency code (default: EGP)
|
|
157
|
+
* @param extras Custom metadata
|
|
158
|
+
* @returns The payment URL and client secret
|
|
159
|
+
*/
|
|
160
|
+
createPaymentIntention(amount: number, billingData: PaymobBillingData, items: PaymobOrderItem[], currency?: string, extras?: Record<string, any>): Promise<{
|
|
161
|
+
paymentUrl: string;
|
|
162
|
+
clientSecret: string;
|
|
163
|
+
}>;
|
|
164
|
+
/**
|
|
165
|
+
* Creates a payment URL with user data and custom metadata
|
|
166
|
+
* @param amount The payment amount
|
|
167
|
+
* @param userId The user ID
|
|
168
|
+
* @param contractId The contract ID
|
|
169
|
+
* @param userData The user data for billing
|
|
170
|
+
* @param serviceType The service type identifier
|
|
171
|
+
* @returns The payment URL and related data
|
|
172
|
+
*/
|
|
173
|
+
createPaymentUrlWithUserData(amount: number, userId: string, contractId: string, userData: {
|
|
174
|
+
firstName: string;
|
|
175
|
+
lastName: string;
|
|
176
|
+
email: string;
|
|
177
|
+
phone: string;
|
|
178
|
+
}, serviceType: string): Promise<{
|
|
179
|
+
paymentUrl: string;
|
|
180
|
+
}>;
|
|
181
|
+
verifyPayment(hmac: string, data: Record<string, any>): Promise<boolean>;
|
|
182
|
+
/**
|
|
183
|
+
* Verify webhook HMAC signature for query parameters
|
|
184
|
+
* Uses the correct field order as per Paymob documentation
|
|
185
|
+
*/
|
|
186
|
+
verifyWebhookHmac(queryParams: Record<string, string>): boolean;
|
|
187
|
+
handleWebhook(webhookData: PaymobWebhookData): Promise<WebhookResult<TransactionData>>;
|
|
188
|
+
/**
|
|
189
|
+
* Handle webhook with query parameters (GET request)
|
|
190
|
+
* This is for webhooks that come as URL query parameters instead of JSON body
|
|
191
|
+
*/
|
|
192
|
+
handleWebhookQuery(queryParams: Record<string, string>): WebhookResult<WebhookQueryTransactionData>;
|
|
193
|
+
getTransactionStatus(transactionId: number): Promise<TransactionStatusResult>;
|
|
194
|
+
/**
|
|
195
|
+
* Get order details including metadata
|
|
196
|
+
*/
|
|
197
|
+
getOrderDetails(orderId: number): Promise<OrderDetailsResult>;
|
|
198
|
+
/**
|
|
199
|
+
* Handle webhook query and fetch items from order
|
|
200
|
+
*/
|
|
201
|
+
handleWebhookQueryWithItems(queryParams: Record<string, string>): Promise<WebhookResult<WebhookQueryWithItemsTransactionData>>;
|
|
202
|
+
}
|
|
203
|
+
export {};
|