|
2 | 2 |
|
3 | 3 | import { APIResource } from '../core/resource'; |
4 | 4 | import { APIPromise } from '../core/api-promise'; |
| 5 | +import { OffsetPagination, type OffsetPaginationParams, PagePromise } from '../core/pagination'; |
5 | 6 | import { buildHeaders } from '../internal/headers'; |
6 | 7 | import { RequestOptions } from '../internal/request-options'; |
7 | 8 | import { path } from '../internal/utils/path'; |
@@ -63,12 +64,20 @@ export class CredentialProviders extends APIResource { |
63 | 64 | * |
64 | 65 | * @example |
65 | 66 | * ```ts |
66 | | - * const credentialProviders = |
67 | | - * await client.credentialProviders.list(); |
| 67 | + * // Automatically fetches more pages as needed. |
| 68 | + * for await (const credentialProvider of client.credentialProviders.list()) { |
| 69 | + * // ... |
| 70 | + * } |
68 | 71 | * ``` |
69 | 72 | */ |
70 | | - list(options?: RequestOptions): APIPromise<CredentialProviderListResponse> { |
71 | | - return this._client.get('/org/credential_providers', options); |
| 73 | + list( |
| 74 | + query: CredentialProviderListParams | null | undefined = {}, |
| 75 | + options?: RequestOptions, |
| 76 | + ): PagePromise<CredentialProvidersOffsetPagination, CredentialProvider> { |
| 77 | + return this._client.getAPIList('/org/credential_providers', OffsetPagination<CredentialProvider>, { |
| 78 | + query, |
| 79 | + ...options, |
| 80 | + }); |
72 | 81 | } |
73 | 82 |
|
74 | 83 | /** |
@@ -115,6 +124,8 @@ export class CredentialProviders extends APIResource { |
115 | 124 | } |
116 | 125 | } |
117 | 126 |
|
| 127 | +export type CredentialProvidersOffsetPagination = OffsetPagination<CredentialProvider>; |
| 128 | + |
118 | 129 | /** |
119 | 130 | * Request to create an external credential provider |
120 | 131 | */ |
@@ -280,8 +291,6 @@ export interface UpdateCredentialProviderRequest { |
280 | 291 | priority?: number; |
281 | 292 | } |
282 | 293 |
|
283 | | -export type CredentialProviderListResponse = Array<CredentialProvider>; |
284 | | - |
285 | 294 | export interface CredentialProviderListItemsResponse { |
286 | 295 | items?: Array<CredentialProviderItem>; |
287 | 296 | } |
@@ -335,16 +344,19 @@ export interface CredentialProviderUpdateParams { |
335 | 344 | priority?: number; |
336 | 345 | } |
337 | 346 |
|
| 347 | +export interface CredentialProviderListParams extends OffsetPaginationParams {} |
| 348 | + |
338 | 349 | export declare namespace CredentialProviders { |
339 | 350 | export { |
340 | 351 | type CreateCredentialProviderRequest as CreateCredentialProviderRequest, |
341 | 352 | type CredentialProvider as CredentialProvider, |
342 | 353 | type CredentialProviderItem as CredentialProviderItem, |
343 | 354 | type CredentialProviderTestResult as CredentialProviderTestResult, |
344 | 355 | type UpdateCredentialProviderRequest as UpdateCredentialProviderRequest, |
345 | | - type CredentialProviderListResponse as CredentialProviderListResponse, |
346 | 356 | type CredentialProviderListItemsResponse as CredentialProviderListItemsResponse, |
| 357 | + type CredentialProvidersOffsetPagination as CredentialProvidersOffsetPagination, |
347 | 358 | type CredentialProviderCreateParams as CredentialProviderCreateParams, |
348 | 359 | type CredentialProviderUpdateParams as CredentialProviderUpdateParams, |
| 360 | + type CredentialProviderListParams as CredentialProviderListParams, |
349 | 361 | }; |
350 | 362 | } |
0 commit comments