@@ -92,14 +92,20 @@ export const CARD_VERIFICATION_STATUS = {
92
92
*
93
93
* @tag Cards
94
94
*/
95
+
96
+ /** @template T
97
+ * @template K {extends keyof T}
98
+ * @typedef {Pick<Partial<T>, K> & Omit<T, K> } Optional
99
+ */
100
+
95
101
/**
96
102
* Card information collected for acquisition.
97
103
* @typedef LinkCard
98
104
* @property {string } cardNumber - All digits of the card
99
105
* @property {CardExpiration } expiration - Card expiration date
100
106
* @property {string } cardCvv - 3-4 digit card verification value
101
107
* @property {string } holderName - Full name of the card holder
102
- * @property {CardBillingAddress } billingAddress - The billing address of the card
108
+ * @property {Optional< CardBillingAddress, 'addressLine1' | 'addressLine2' | 'city' | 'stateOrProvince' | 'country'> } billingAddress - The billing address of the card
103
109
*
104
110
* @tag Cards
105
111
*/
@@ -141,7 +147,7 @@ export const CARD_VERIFICATION_STATUS = {
141
147
* @property {CardVerficationStatuses } cardVerfication - The results of submitting cardholder data to a card network for verification
142
148
* @property {string } issuer - The name of the issuer
143
149
* @property {string } issuerCountry - The country of the issuer
144
- *
150
+ *
145
151
* @example
146
152
* {
147
153
"cardID": "ec7e1848-dc80-4ab0-8827-dd7fc0737b43",
@@ -171,7 +177,7 @@ export const CARD_VERIFICATION_STATUS = {
171
177
"issuer": "GRINGOTTS BANK",
172
178
"issuerCountry": "US"
173
179
}
174
- *
180
+ *
175
181
* @tag Cards
176
182
*/
177
183
@@ -187,7 +193,7 @@ export class Cards {
187
193
/**
188
194
* Retrieves details for the card with the specified ID.
189
195
* The `CARDS_READ` scope enum is required when making a request from the browser.
190
- *
196
+ *
191
197
* @param {string } accountID - Account to query
192
198
* @param {string } cardID - Card to query
193
199
* @returns {Promise<Card> }
@@ -210,7 +216,7 @@ export class Cards {
210
216
/**
211
217
* Lists all the cards associated with a particular Moov account.
212
218
* The `CARDS_READ` scope enum is required when making a request from the browser.
213
- *
219
+ *
214
220
* @param {string } accountID - Account to query
215
221
* @returns {Promise<Card[]> }
216
222
* @tag Cards
@@ -232,7 +238,7 @@ export class Cards {
232
238
* Links a card to a Moov account. Only use this endpoint if you have provided Moov with a
233
239
* copy of your PCI attestation of compliance.
234
240
* The `CARDS_WRITE` scope enum is required when making a request from the browser.
235
- *
241
+ *
236
242
* @param {string } accountID - Account to link
237
243
* @param {LinkCard } card - Card information
238
244
* @returns {Promise<Card> }
@@ -256,7 +262,7 @@ export class Cards {
256
262
/**
257
263
* Disables a card with the specified ID.
258
264
* The `CARDS_WRITE` scope enum is required when making a request from the browser.
259
- *
265
+ *
260
266
* @param {string } accountID - Account to query
261
267
* @param {string } cardID - Card to query
262
268
* @returns {Promise<void> }
0 commit comments