// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../core/resource'; import { APIPromise } from '../../core/api-promise'; import { RequestOptions } from '../../internal/request-options'; /** * Custom objects defined by the company */ export class Types extends APIResource { /** * List component types that can be described, validated, and deployed by metadata * composer. * * Requires the Metadata entitlement. * * @example SDK usage * ```ts * const types = await client.metadata.types.list(); * ``` * * @example HTTP * Representative request and response shapes. * ``` * GET /metadata/types/ HTTP/1.1 * Host: rest.ripplingapis.com * Accept: application/json * Rippling-Api-Version: 2024-08-01 * * HTTP/1.1 200 OK * Content-Type: application/json * * { * "types": [ * { * "type": "string", * "display_name": "string", * "description": "string" * } * ] * } * ``` */ list(options?: RequestOptions): APIPromise { return this._client.get('/metadata/types/', options); } } export interface TypeListResponse { /** * Composer-enabled metadata component types. */ types: Array; } export namespace TypeListResponse { export interface Type { /** * Short description of the component type. */ description: string; /** * Human-readable component type name. */ display_name: string; /** * Metadata component type. */ type: string; } } export declare namespace Types { export { type TypeListResponse as TypeListResponse }; }