@randock/nameshift-api-client 0.0.445 → 0.0.446

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.
Files changed (61) hide show
  1. package/.openapi-generator/FILES +7 -0
  2. package/README.md +3 -3
  3. package/dist/apis/AccountsApi.d.ts +2 -2
  4. package/dist/apis/AccountsApi.js +2 -2
  5. package/dist/apis/AdminApi.d.ts +16 -3
  6. package/dist/apis/AdminApi.js +59 -2
  7. package/dist/models/AccountNameshiftCommissionBySubtypeDto.d.ts +6 -0
  8. package/dist/models/AccountNameshiftCommissionBySubtypeDto.js +4 -0
  9. package/dist/models/AccountNameshiftCommissionByTypeDto.d.ts +2 -2
  10. package/dist/models/AccountNameshiftCommissionItemDto.d.ts +12 -0
  11. package/dist/models/AccountNameshiftCommissionItemDto.js +8 -0
  12. package/dist/models/AccountNameshiftCommissionReasonDto.d.ts +21 -0
  13. package/dist/models/AccountNameshiftCommissionReasonDto.js +13 -1
  14. package/dist/models/CommissionConfigurationSimulationInput.d.ts +33 -0
  15. package/dist/models/CommissionConfigurationSimulationInput.js +52 -0
  16. package/dist/models/CommissionConfigurationSimulationInputPayload.d.ts +27 -0
  17. package/dist/models/CommissionConfigurationSimulationInputPayload.js +54 -0
  18. package/dist/models/CommissionDto.d.ts +12 -0
  19. package/dist/models/CommissionDto.js +8 -0
  20. package/dist/models/CommissionFactor.d.ts +1 -1
  21. package/dist/models/CommissionFactor.js +1 -1
  22. package/dist/models/CommissionPayloadInput.d.ts +12 -0
  23. package/dist/models/CommissionPayloadInput.js +4 -0
  24. package/dist/models/CommissionReasonDto.d.ts +33 -0
  25. package/dist/models/CommissionReasonDto.js +17 -1
  26. package/dist/models/CommissionSimulationItemInput.d.ts +123 -0
  27. package/dist/models/CommissionSimulationItemInput.js +113 -0
  28. package/dist/models/CommissionSimulationResultDto.d.ts +39 -0
  29. package/dist/models/CommissionSimulationResultDto.js +56 -0
  30. package/dist/models/FixedCommissionPayloadSimulationInput.d.ts +39 -0
  31. package/dist/models/FixedCommissionPayloadSimulationInput.js +56 -0
  32. package/dist/models/GetAccountNameshiftCommissionsResponseDto.d.ts +1 -1
  33. package/dist/models/MozMetrics.d.ts +6 -0
  34. package/dist/models/MozMetrics.js +4 -0
  35. package/dist/models/SalesCountCommissionPayloadSimulationInput.d.ts +40 -0
  36. package/dist/models/SalesCountCommissionPayloadSimulationInput.js +57 -0
  37. package/dist/models/SimulateCommissionInput.d.ts +67 -0
  38. package/dist/models/SimulateCommissionInput.js +78 -0
  39. package/dist/models/index.d.ts +7 -0
  40. package/dist/models/index.js +7 -0
  41. package/package.json +1 -1
  42. package/src/apis/AccountsApi.ts +2 -2
  43. package/src/apis/AdminApi.ts +58 -2
  44. package/src/models/AccountNameshiftCommissionBySubtypeDto.ts +9 -0
  45. package/src/models/AccountNameshiftCommissionByTypeDto.ts +2 -2
  46. package/src/models/AccountNameshiftCommissionItemDto.ts +18 -0
  47. package/src/models/AccountNameshiftCommissionReasonDto.ts +26 -0
  48. package/src/models/CommissionConfigurationSimulationInput.ts +74 -0
  49. package/src/models/CommissionConfigurationSimulationInputPayload.ts +73 -0
  50. package/src/models/CommissionDto.ts +18 -0
  51. package/src/models/CommissionFactor.ts +1 -1
  52. package/src/models/CommissionPayloadInput.ts +16 -0
  53. package/src/models/CommissionReasonDto.ts +42 -0
  54. package/src/models/CommissionSimulationItemInput.ts +202 -0
  55. package/src/models/CommissionSimulationResultDto.ts +83 -0
  56. package/src/models/FixedCommissionPayloadSimulationInput.ts +85 -0
  57. package/src/models/GetAccountNameshiftCommissionsResponseDto.ts +1 -1
  58. package/src/models/MozMetrics.ts +9 -0
  59. package/src/models/SalesCountCommissionPayloadSimulationInput.ts +92 -0
  60. package/src/models/SimulateCommissionInput.ts +123 -0
  61. package/src/models/index.ts +7 -0
@@ -0,0 +1,74 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Nameshift
5
+ * Nameshift domain marketplace and management API. ## Authentication - **Bearer JWT** — Seller and buyer sessions obtained via login endpoints. - **API key** — Pass the `apikey` header for programmatic seller access. ## Audiences - **(public)** tags — Unauthenticated or buyer-facing endpoints. - **Accounts / Domains / Leads / Buyers** — Seller or buyer resources. - **Partner** — Partner integrations.
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { CommissionConfigurationSimulationInputPayload } from './CommissionConfigurationSimulationInputPayload';
17
+ import {
18
+ CommissionConfigurationSimulationInputPayloadFromJSON,
19
+ CommissionConfigurationSimulationInputPayloadFromJSONTyped,
20
+ CommissionConfigurationSimulationInputPayloadToJSON,
21
+ CommissionConfigurationSimulationInputPayloadToJSONTyped,
22
+ } from './CommissionConfigurationSimulationInputPayload';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface CommissionConfigurationSimulationInput
28
+ */
29
+ export interface CommissionConfigurationSimulationInput {
30
+ /**
31
+ *
32
+ * @type {CommissionConfigurationSimulationInputPayload}
33
+ * @memberof CommissionConfigurationSimulationInput
34
+ */
35
+ payload: CommissionConfigurationSimulationInputPayload;
36
+ }
37
+
38
+ /**
39
+ * Check if a given object implements the CommissionConfigurationSimulationInput interface.
40
+ */
41
+ export function instanceOfCommissionConfigurationSimulationInput(value: object): value is CommissionConfigurationSimulationInput {
42
+ if (!('payload' in value) || value['payload'] === undefined) return false;
43
+ return true;
44
+ }
45
+
46
+ export function CommissionConfigurationSimulationInputFromJSON(json: any): CommissionConfigurationSimulationInput {
47
+ return CommissionConfigurationSimulationInputFromJSONTyped(json, false);
48
+ }
49
+
50
+ export function CommissionConfigurationSimulationInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): CommissionConfigurationSimulationInput {
51
+ if (json == null) {
52
+ return json;
53
+ }
54
+ return {
55
+
56
+ 'payload': CommissionConfigurationSimulationInputPayloadFromJSON(json['payload']),
57
+ };
58
+ }
59
+
60
+ export function CommissionConfigurationSimulationInputToJSON(json: any): CommissionConfigurationSimulationInput {
61
+ return CommissionConfigurationSimulationInputToJSONTyped(json, false);
62
+ }
63
+
64
+ export function CommissionConfigurationSimulationInputToJSONTyped(value?: CommissionConfigurationSimulationInput | null, ignoreDiscriminator: boolean = false): any {
65
+ if (value == null) {
66
+ return value;
67
+ }
68
+
69
+ return {
70
+
71
+ 'payload': CommissionConfigurationSimulationInputPayloadToJSON(value['payload']),
72
+ };
73
+ }
74
+
@@ -0,0 +1,73 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Nameshift
5
+ * Nameshift domain marketplace and management API. ## Authentication - **Bearer JWT** — Seller and buyer sessions obtained via login endpoints. - **API key** — Pass the `apikey` header for programmatic seller access. ## Audiences - **(public)** tags — Unauthenticated or buyer-facing endpoints. - **Accounts / Domains / Leads / Buyers** — Seller or buyer resources. - **Partner** — Partner integrations.
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import type { FixedCommissionPayloadSimulationInput } from './FixedCommissionPayloadSimulationInput';
16
+ import {
17
+ instanceOfFixedCommissionPayloadSimulationInput,
18
+ FixedCommissionPayloadSimulationInputFromJSON,
19
+ FixedCommissionPayloadSimulationInputFromJSONTyped,
20
+ FixedCommissionPayloadSimulationInputToJSON,
21
+ } from './FixedCommissionPayloadSimulationInput';
22
+ import type { SalesCountCommissionPayloadSimulationInput } from './SalesCountCommissionPayloadSimulationInput';
23
+ import {
24
+ instanceOfSalesCountCommissionPayloadSimulationInput,
25
+ SalesCountCommissionPayloadSimulationInputFromJSON,
26
+ SalesCountCommissionPayloadSimulationInputFromJSONTyped,
27
+ SalesCountCommissionPayloadSimulationInputToJSON,
28
+ } from './SalesCountCommissionPayloadSimulationInput';
29
+
30
+ /**
31
+ * @type CommissionConfigurationSimulationInputPayload
32
+ * Commission configuration payload. Shape depends on `factor`.
33
+ * @export
34
+ */
35
+ export type CommissionConfigurationSimulationInputPayload = { factor: 'fixed' } & FixedCommissionPayloadSimulationInput | { factor: 'monthly_sales_count' } & SalesCountCommissionPayloadSimulationInput;
36
+
37
+ export function CommissionConfigurationSimulationInputPayloadFromJSON(json: any): CommissionConfigurationSimulationInputPayload {
38
+ return CommissionConfigurationSimulationInputPayloadFromJSONTyped(json, false);
39
+ }
40
+
41
+ export function CommissionConfigurationSimulationInputPayloadFromJSONTyped(json: any, ignoreDiscriminator: boolean): CommissionConfigurationSimulationInputPayload {
42
+ if (json == null) {
43
+ return json;
44
+ }
45
+ switch (json['factor']) {
46
+ case 'fixed':
47
+ return Object.assign({}, FixedCommissionPayloadSimulationInputFromJSONTyped(json, true), { factor: 'fixed' } as const);
48
+ case 'monthly_sales_count':
49
+ return Object.assign({}, SalesCountCommissionPayloadSimulationInputFromJSONTyped(json, true), { factor: 'monthly_sales_count' } as const);
50
+ default:
51
+ throw new Error(`No variant of CommissionConfigurationSimulationInputPayload exists with 'factor=${json['factor']}'`);
52
+ }
53
+ }
54
+
55
+ export function CommissionConfigurationSimulationInputPayloadToJSON(json: any): any {
56
+ return CommissionConfigurationSimulationInputPayloadToJSONTyped(json, false);
57
+ }
58
+
59
+ export function CommissionConfigurationSimulationInputPayloadToJSONTyped(value?: CommissionConfigurationSimulationInputPayload | null, ignoreDiscriminator: boolean = false): any {
60
+ if (value == null) {
61
+ return value;
62
+ }
63
+ switch (value['factor']) {
64
+ case 'fixed':
65
+ return Object.assign({}, FixedCommissionPayloadSimulationInputToJSON(value), { factor: 'fixed' } as const);
66
+ case 'monthly_sales_count':
67
+ return Object.assign({}, SalesCountCommissionPayloadSimulationInputToJSON(value), { factor: 'monthly_sales_count' } as const);
68
+ default:
69
+ throw new Error(`No variant of CommissionConfigurationSimulationInputPayload exists with 'factor=${value['factor']}'`);
70
+ }
71
+
72
+ }
73
+
@@ -88,6 +88,18 @@ export interface CommissionDto {
88
88
  * @memberof CommissionDto
89
89
  */
90
90
  excludedAccountIds: Array<string>;
91
+ /**
92
+ * Domain extensions this commission applies to. When empty, the commission applies to all extensions.
93
+ * @type {Array<string>}
94
+ * @memberof CommissionDto
95
+ */
96
+ tlds: Array<string>;
97
+ /**
98
+ * Domain extensions excluded from this commission.
99
+ * @type {Array<string>}
100
+ * @memberof CommissionDto
101
+ */
102
+ excludedTlds: Array<string>;
91
103
  /**
92
104
  * Commission creation date.
93
105
  * @type {Date}
@@ -137,6 +149,8 @@ export function instanceOfCommissionDto(value: object): value is CommissionDto {
137
149
  if (!('dateStart' in value) || value['dateStart'] === undefined) return false;
138
150
  if (!('dateEnd' in value) || value['dateEnd'] === undefined) return false;
139
151
  if (!('excludedAccountIds' in value) || value['excludedAccountIds'] === undefined) return false;
152
+ if (!('tlds' in value) || value['tlds'] === undefined) return false;
153
+ if (!('excludedTlds' in value) || value['excludedTlds'] === undefined) return false;
140
154
  if (!('createdAt' in value) || value['createdAt'] === undefined) return false;
141
155
  if (!('updatedAt' in value) || value['updatedAt'] === undefined) return false;
142
156
  return true;
@@ -161,6 +175,8 @@ export function CommissionDtoFromJSONTyped(json: any, ignoreDiscriminator: boole
161
175
  'dateStart': (new Date(json['dateStart'])),
162
176
  'dateEnd': (json['dateEnd'] == null ? null : new Date(json['dateEnd'])),
163
177
  'excludedAccountIds': json['excludedAccountIds'],
178
+ 'tlds': json['tlds'],
179
+ 'excludedTlds': json['excludedTlds'],
164
180
  'createdAt': (new Date(json['createdAt'])),
165
181
  'updatedAt': (new Date(json['updatedAt'])),
166
182
  };
@@ -186,6 +202,8 @@ export function CommissionDtoToJSONTyped(value?: CommissionDto | null, ignoreDis
186
202
  'dateStart': ((value['dateStart']).toISOString()),
187
203
  'dateEnd': (value['dateEnd'] == null ? null : (value['dateEnd'] as any).toISOString()),
188
204
  'excludedAccountIds': value['excludedAccountIds'],
205
+ 'tlds': value['tlds'],
206
+ 'excludedTlds': value['excludedTlds'],
189
207
  'createdAt': ((value['createdAt']).toISOString()),
190
208
  'updatedAt': ((value['updatedAt']).toISOString()),
191
209
  };
@@ -14,7 +14,7 @@
14
14
 
15
15
 
16
16
  /**
17
- * Factor that determines how the commission is calculated
17
+ * Commission factor (MONTHLY_SALES_COUNT)
18
18
  * @export
19
19
  */
20
20
  export const CommissionFactor = {
@@ -81,6 +81,18 @@ export interface CommissionPayloadInput {
81
81
  * @memberof CommissionPayloadInput
82
82
  */
83
83
  excludedAccountIds: Array<string>;
84
+ /**
85
+ * Domain extensions this commission applies to (for example: "com", "net"). When empty, the commission applies to all extensions.
86
+ * @type {Array<string>}
87
+ * @memberof CommissionPayloadInput
88
+ */
89
+ tlds?: Array<string>;
90
+ /**
91
+ * Domain extensions excluded from this commission.
92
+ * @type {Array<string>}
93
+ * @memberof CommissionPayloadInput
94
+ */
95
+ excludedTlds?: Array<string>;
84
96
  }
85
97
 
86
98
 
@@ -140,6 +152,8 @@ export function CommissionPayloadInputFromJSONTyped(json: any, ignoreDiscriminat
140
152
  'dateStart': (new Date(json['dateStart'])),
141
153
  'dateEnd': (json['dateEnd'] == null ? null : new Date(json['dateEnd'])),
142
154
  'excludedAccountIds': json['excludedAccountIds'],
155
+ 'tlds': json['tlds'] == null ? undefined : json['tlds'],
156
+ 'excludedTlds': json['excludedTlds'] == null ? undefined : json['excludedTlds'],
143
157
  };
144
158
  }
145
159
 
@@ -163,6 +177,8 @@ export function CommissionPayloadInputToJSONTyped(value?: CommissionPayloadInput
163
177
  'dateStart': ((value['dateStart']).toISOString()),
164
178
  'dateEnd': (value['dateEnd'] == null ? null : (value['dateEnd'] as any).toISOString()),
165
179
  'excludedAccountIds': value['excludedAccountIds'],
180
+ 'tlds': value['tlds'],
181
+ 'excludedTlds': value['excludedTlds'],
166
182
  };
167
183
  }
168
184
 
@@ -88,6 +88,18 @@ export interface CommissionReasonDto {
88
88
  * @memberof CommissionReasonDto
89
89
  */
90
90
  excludedAccountIds?: Array<string>;
91
+ /**
92
+ * Domain extensions this commission applies to. When empty, the commission applies to all extensions.
93
+ * @type {Array<string>}
94
+ * @memberof CommissionReasonDto
95
+ */
96
+ tlds?: Array<string>;
97
+ /**
98
+ * Domain extensions excluded from this commission.
99
+ * @type {Array<string>}
100
+ * @memberof CommissionReasonDto
101
+ */
102
+ excludedTlds?: Array<string>;
91
103
  /**
92
104
  * Selected commission percentage value.
93
105
  * @type {number}
@@ -106,6 +118,18 @@ export interface CommissionReasonDto {
106
118
  * @memberof CommissionReasonDto
107
119
  */
108
120
  factorCountResult?: number | null;
121
+ /**
122
+ * How the commission was selected for the domain extension.
123
+ * @type {string}
124
+ * @memberof CommissionReasonDto
125
+ */
126
+ tldMatchType?: CommissionReasonDtoTldMatchTypeEnum;
127
+ /**
128
+ * Domain extension used to select the commission, if any.
129
+ * @type {string}
130
+ * @memberof CommissionReasonDto
131
+ */
132
+ tldMatchedValue?: string | null;
109
133
  }
110
134
 
111
135
 
@@ -129,6 +153,16 @@ export const CommissionReasonDtoSubtypeEnum = {
129
153
  } as const;
130
154
  export type CommissionReasonDtoSubtypeEnum = typeof CommissionReasonDtoSubtypeEnum[keyof typeof CommissionReasonDtoSubtypeEnum];
131
155
 
156
+ /**
157
+ * @export
158
+ */
159
+ export const CommissionReasonDtoTldMatchTypeEnum = {
160
+ NULL_TLD_DEFAULT: 'null_tld_default',
161
+ INCLUDED_TLD_LIST: 'included_tld_list',
162
+ ALL_TLDS_DEFAULT: 'all_tlds_default'
163
+ } as const;
164
+ export type CommissionReasonDtoTldMatchTypeEnum = typeof CommissionReasonDtoTldMatchTypeEnum[keyof typeof CommissionReasonDtoTldMatchTypeEnum];
165
+
132
166
 
133
167
  /**
134
168
  * Check if a given object implements the CommissionReasonDto interface.
@@ -156,9 +190,13 @@ export function CommissionReasonDtoFromJSONTyped(json: any, ignoreDiscriminator:
156
190
  'dateStart': json['dateStart'] == null ? undefined : json['dateStart'],
157
191
  'dateEnd': json['dateEnd'] == null ? undefined : json['dateEnd'],
158
192
  'excludedAccountIds': json['excludedAccountIds'] == null ? undefined : json['excludedAccountIds'],
193
+ 'tlds': json['tlds'] == null ? undefined : json['tlds'],
194
+ 'excludedTlds': json['excludedTlds'] == null ? undefined : json['excludedTlds'],
159
195
  'selectedValue': json['selectedValue'] == null ? undefined : json['selectedValue'],
160
196
  'selectedTier': json['selectedTier'] == null ? undefined : CommissionPercentageRangeDtoFromJSON(json['selectedTier']),
161
197
  'factorCountResult': json['factorCountResult'] == null ? undefined : json['factorCountResult'],
198
+ 'tldMatchType': json['tldMatchType'] == null ? undefined : json['tldMatchType'],
199
+ 'tldMatchedValue': json['tldMatchedValue'] == null ? undefined : json['tldMatchedValue'],
162
200
  };
163
201
  }
164
202
 
@@ -182,9 +220,13 @@ export function CommissionReasonDtoToJSONTyped(value?: CommissionReasonDto | nul
182
220
  'dateStart': value['dateStart'],
183
221
  'dateEnd': value['dateEnd'],
184
222
  'excludedAccountIds': value['excludedAccountIds'],
223
+ 'tlds': value['tlds'],
224
+ 'excludedTlds': value['excludedTlds'],
185
225
  'selectedValue': value['selectedValue'],
186
226
  'selectedTier': CommissionPercentageRangeDtoToJSON(value['selectedTier']),
187
227
  'factorCountResult': value['factorCountResult'],
228
+ 'tldMatchType': value['tldMatchType'],
229
+ 'tldMatchedValue': value['tldMatchedValue'],
188
230
  };
189
231
  }
190
232
 
@@ -0,0 +1,202 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Nameshift
5
+ * Nameshift domain marketplace and management API. ## Authentication - **Bearer JWT** — Seller and buyer sessions obtained via login endpoints. - **API key** — Pass the `apikey` header for programmatic seller access. ## Audiences - **(public)** tags — Unauthenticated or buyer-facing endpoints. - **Accounts / Domains / Leads / Buyers** — Seller or buyer resources. - **Partner** — Partner integrations.
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { CommissionConfigurationSimulationInput } from './CommissionConfigurationSimulationInput';
17
+ import {
18
+ CommissionConfigurationSimulationInputFromJSON,
19
+ CommissionConfigurationSimulationInputFromJSONTyped,
20
+ CommissionConfigurationSimulationInputToJSON,
21
+ CommissionConfigurationSimulationInputToJSONTyped,
22
+ } from './CommissionConfigurationSimulationInput';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface CommissionSimulationItemInput
28
+ */
29
+ export interface CommissionSimulationItemInput {
30
+ /**
31
+ * Commission ID.
32
+ * @type {string}
33
+ * @memberof CommissionSimulationItemInput
34
+ */
35
+ id: string;
36
+ /**
37
+ * Account ID this commission applies to, or null for global rules.
38
+ * @type {string}
39
+ * @memberof CommissionSimulationItemInput
40
+ */
41
+ account: string | null;
42
+ /**
43
+ * Commission type.
44
+ * @type {string}
45
+ * @memberof CommissionSimulationItemInput
46
+ */
47
+ type: CommissionSimulationItemInputTypeEnum;
48
+ /**
49
+ * Commission subtype.
50
+ * @type {string}
51
+ * @memberof CommissionSimulationItemInput
52
+ */
53
+ subtype: CommissionSimulationItemInputSubtypeEnum;
54
+ /**
55
+ * Commission label.
56
+ * @type {string}
57
+ * @memberof CommissionSimulationItemInput
58
+ */
59
+ label: string;
60
+ /**
61
+ * Commission configuration, or null.
62
+ * @type {CommissionConfigurationSimulationInput}
63
+ * @memberof CommissionSimulationItemInput
64
+ */
65
+ config: CommissionConfigurationSimulationInput | null;
66
+ /**
67
+ * Commission effective start date.
68
+ * @type {Date}
69
+ * @memberof CommissionSimulationItemInput
70
+ */
71
+ dateStart: Date;
72
+ /**
73
+ * Commission effective end date, or null.
74
+ * @type {Date}
75
+ * @memberof CommissionSimulationItemInput
76
+ */
77
+ dateEnd: Date | null;
78
+ /**
79
+ * Account IDs excluded from this commission.
80
+ * @type {Array<string>}
81
+ * @memberof CommissionSimulationItemInput
82
+ */
83
+ excludedAccountIds: Array<string>;
84
+ /**
85
+ * Domain extensions this commission applies to. When empty, the commission applies to all extensions.
86
+ * @type {Array<string>}
87
+ * @memberof CommissionSimulationItemInput
88
+ */
89
+ tlds: Array<string>;
90
+ /**
91
+ * Domain extensions excluded from this commission.
92
+ * @type {Array<string>}
93
+ * @memberof CommissionSimulationItemInput
94
+ */
95
+ excludedTlds: Array<string>;
96
+ /**
97
+ * Commission creation date.
98
+ * @type {Date}
99
+ * @memberof CommissionSimulationItemInput
100
+ */
101
+ createdAt?: Date | null;
102
+ /**
103
+ * Commission last update date.
104
+ * @type {Date}
105
+ * @memberof CommissionSimulationItemInput
106
+ */
107
+ updatedAt?: Date | null;
108
+ }
109
+
110
+
111
+ /**
112
+ * @export
113
+ */
114
+ export const CommissionSimulationItemInputTypeEnum = {
115
+ NAMESHIFT_COMMISSIONS: 'nameshift_commissions',
116
+ AFFILIATE_COMMISSIONS: 'affiliate_commissions'
117
+ } as const;
118
+ export type CommissionSimulationItemInputTypeEnum = typeof CommissionSimulationItemInputTypeEnum[keyof typeof CommissionSimulationItemInputTypeEnum];
119
+
120
+ /**
121
+ * @export
122
+ */
123
+ export const CommissionSimulationItemInputSubtypeEnum = {
124
+ POINTING: 'pointing',
125
+ NOT_POINTING: 'not_pointing',
126
+ MANUAL_LEAD: 'manual_lead',
127
+ AUCTION: 'auction'
128
+ } as const;
129
+ export type CommissionSimulationItemInputSubtypeEnum = typeof CommissionSimulationItemInputSubtypeEnum[keyof typeof CommissionSimulationItemInputSubtypeEnum];
130
+
131
+
132
+ /**
133
+ * Check if a given object implements the CommissionSimulationItemInput interface.
134
+ */
135
+ export function instanceOfCommissionSimulationItemInput(value: object): value is CommissionSimulationItemInput {
136
+ if (!('id' in value) || value['id'] === undefined) return false;
137
+ if (!('account' in value) || value['account'] === undefined) return false;
138
+ if (!('type' in value) || value['type'] === undefined) return false;
139
+ if (!('subtype' in value) || value['subtype'] === undefined) return false;
140
+ if (!('label' in value) || value['label'] === undefined) return false;
141
+ if (!('config' in value) || value['config'] === undefined) return false;
142
+ if (!('dateStart' in value) || value['dateStart'] === undefined) return false;
143
+ if (!('dateEnd' in value) || value['dateEnd'] === undefined) return false;
144
+ if (!('excludedAccountIds' in value) || value['excludedAccountIds'] === undefined) return false;
145
+ if (!('tlds' in value) || value['tlds'] === undefined) return false;
146
+ if (!('excludedTlds' in value) || value['excludedTlds'] === undefined) return false;
147
+ return true;
148
+ }
149
+
150
+ export function CommissionSimulationItemInputFromJSON(json: any): CommissionSimulationItemInput {
151
+ return CommissionSimulationItemInputFromJSONTyped(json, false);
152
+ }
153
+
154
+ export function CommissionSimulationItemInputFromJSONTyped(json: any, ignoreDiscriminator: boolean): CommissionSimulationItemInput {
155
+ if (json == null) {
156
+ return json;
157
+ }
158
+ return {
159
+
160
+ 'id': json['id'],
161
+ 'account': json['account'],
162
+ 'type': json['type'],
163
+ 'subtype': json['subtype'],
164
+ 'label': json['label'],
165
+ 'config': CommissionConfigurationSimulationInputFromJSON(json['config']),
166
+ 'dateStart': (new Date(json['dateStart'])),
167
+ 'dateEnd': (json['dateEnd'] == null ? null : new Date(json['dateEnd'])),
168
+ 'excludedAccountIds': json['excludedAccountIds'],
169
+ 'tlds': json['tlds'],
170
+ 'excludedTlds': json['excludedTlds'],
171
+ 'createdAt': json['createdAt'] == null ? undefined : (new Date(json['createdAt'])),
172
+ 'updatedAt': json['updatedAt'] == null ? undefined : (new Date(json['updatedAt'])),
173
+ };
174
+ }
175
+
176
+ export function CommissionSimulationItemInputToJSON(json: any): CommissionSimulationItemInput {
177
+ return CommissionSimulationItemInputToJSONTyped(json, false);
178
+ }
179
+
180
+ export function CommissionSimulationItemInputToJSONTyped(value?: CommissionSimulationItemInput | null, ignoreDiscriminator: boolean = false): any {
181
+ if (value == null) {
182
+ return value;
183
+ }
184
+
185
+ return {
186
+
187
+ 'id': value['id'],
188
+ 'account': value['account'],
189
+ 'type': value['type'],
190
+ 'subtype': value['subtype'],
191
+ 'label': value['label'],
192
+ 'config': CommissionConfigurationSimulationInputToJSON(value['config']),
193
+ 'dateStart': ((value['dateStart']).toISOString()),
194
+ 'dateEnd': (value['dateEnd'] == null ? null : (value['dateEnd'] as any).toISOString()),
195
+ 'excludedAccountIds': value['excludedAccountIds'],
196
+ 'tlds': value['tlds'],
197
+ 'excludedTlds': value['excludedTlds'],
198
+ 'createdAt': value['createdAt'] == null ? undefined : ((value['createdAt'] as any).toISOString()),
199
+ 'updatedAt': value['updatedAt'] == null ? undefined : ((value['updatedAt'] as any).toISOString()),
200
+ };
201
+ }
202
+
@@ -0,0 +1,83 @@
1
+ /* tslint:disable */
2
+ /* eslint-disable */
3
+ /**
4
+ * Nameshift
5
+ * Nameshift domain marketplace and management API. ## Authentication - **Bearer JWT** — Seller and buyer sessions obtained via login endpoints. - **API key** — Pass the `apikey` header for programmatic seller access. ## Audiences - **(public)** tags — Unauthenticated or buyer-facing endpoints. - **Accounts / Domains / Leads / Buyers** — Seller or buyer resources. - **Partner** — Partner integrations.
6
+ *
7
+ * The version of the OpenAPI document: 1.0
8
+ *
9
+ *
10
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
11
+ * https://openapi-generator.tech
12
+ * Do not edit the class manually.
13
+ */
14
+
15
+ import { mapValues } from '../runtime';
16
+ import type { CommissionReasonDto } from './CommissionReasonDto';
17
+ import {
18
+ CommissionReasonDtoFromJSON,
19
+ CommissionReasonDtoFromJSONTyped,
20
+ CommissionReasonDtoToJSON,
21
+ CommissionReasonDtoToJSONTyped,
22
+ } from './CommissionReasonDto';
23
+
24
+ /**
25
+ *
26
+ * @export
27
+ * @interface CommissionSimulationResultDto
28
+ */
29
+ export interface CommissionSimulationResultDto {
30
+ /**
31
+ * Resolved commission percentage for the given scenario.
32
+ * @type {number}
33
+ * @memberof CommissionSimulationResultDto
34
+ */
35
+ percentage: number;
36
+ /**
37
+ * Commission selection reason.
38
+ * @type {CommissionReasonDto}
39
+ * @memberof CommissionSimulationResultDto
40
+ */
41
+ reason: CommissionReasonDto | null;
42
+ }
43
+
44
+ /**
45
+ * Check if a given object implements the CommissionSimulationResultDto interface.
46
+ */
47
+ export function instanceOfCommissionSimulationResultDto(value: object): value is CommissionSimulationResultDto {
48
+ if (!('percentage' in value) || value['percentage'] === undefined) return false;
49
+ if (!('reason' in value) || value['reason'] === undefined) return false;
50
+ return true;
51
+ }
52
+
53
+ export function CommissionSimulationResultDtoFromJSON(json: any): CommissionSimulationResultDto {
54
+ return CommissionSimulationResultDtoFromJSONTyped(json, false);
55
+ }
56
+
57
+ export function CommissionSimulationResultDtoFromJSONTyped(json: any, ignoreDiscriminator: boolean): CommissionSimulationResultDto {
58
+ if (json == null) {
59
+ return json;
60
+ }
61
+ return {
62
+
63
+ 'percentage': json['percentage'],
64
+ 'reason': CommissionReasonDtoFromJSON(json['reason']),
65
+ };
66
+ }
67
+
68
+ export function CommissionSimulationResultDtoToJSON(json: any): CommissionSimulationResultDto {
69
+ return CommissionSimulationResultDtoToJSONTyped(json, false);
70
+ }
71
+
72
+ export function CommissionSimulationResultDtoToJSONTyped(value?: CommissionSimulationResultDto | null, ignoreDiscriminator: boolean = false): any {
73
+ if (value == null) {
74
+ return value;
75
+ }
76
+
77
+ return {
78
+
79
+ 'percentage': value['percentage'],
80
+ 'reason': CommissionReasonDtoToJSON(value['reason']),
81
+ };
82
+ }
83
+