// File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details. import { APIResource } from '../../../resource'; import { isRequestOptions } from '../../../core'; import * as Core from '../../../core'; import * as SlugAPI from './slug'; import * as BlockTypesAPI from '../block-types'; import * as BlockDocumentsAPI from './block-documents'; export class Slug extends APIResource { blockDocuments: BlockDocumentsAPI.BlockDocuments = new BlockDocumentsAPI.BlockDocuments(this._client); /** * Get a block type by name. */ retrieve( slug: string, params?: SlugRetrieveParams, options?: Core.RequestOptions, ): Core.APIPromise; retrieve(slug: string, options?: Core.RequestOptions): Core.APIPromise; retrieve( slug: string, params: SlugRetrieveParams | Core.RequestOptions = {}, options?: Core.RequestOptions, ): Core.APIPromise { if (isRequestOptions(params)) { return this.retrieve(slug, {}, params); } const { 'x-prefect-api-version': xPrefectAPIVersion } = params; return this._client.get(`/api/block_types/slug/${slug}`, { ...options, headers: { ...(xPrefectAPIVersion != null ? { 'x-prefect-api-version': xPrefectAPIVersion } : undefined), ...options?.headers, }, }); } } export interface SlugRetrieveParams { 'x-prefect-api-version'?: string; } export namespace Slug { export import SlugRetrieveParams = SlugAPI.SlugRetrieveParams; export import BlockDocuments = BlockDocumentsAPI.BlockDocuments; export import BlockDocumentListResponse = BlockDocumentsAPI.BlockDocumentListResponse; export import BlockDocumentListParams = BlockDocumentsAPI.BlockDocumentListParams; }