// 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 DatabaseAPI from './database'; export class Database extends APIResource { /** * Create all database objects. */ create(params?: DatabaseCreateParams, options?: Core.RequestOptions): Core.APIPromise; create(options?: Core.RequestOptions): Core.APIPromise; create( params: DatabaseCreateParams | Core.RequestOptions = {}, options?: Core.RequestOptions, ): Core.APIPromise { if (isRequestOptions(params)) { return this.create({}, params); } const { 'x-prefect-api-version': xPrefectAPIVersion, ...body } = params; return this._client.post('/api/admin/database/create', { body, ...options, headers: { Accept: '*/*', ...(xPrefectAPIVersion != null ? { 'x-prefect-api-version': xPrefectAPIVersion } : undefined), ...options?.headers, }, }); } /** * Clear all database tables without dropping them. */ clear(params?: DatabaseClearParams, options?: Core.RequestOptions): Core.APIPromise; clear(options?: Core.RequestOptions): Core.APIPromise; clear( params: DatabaseClearParams | Core.RequestOptions = {}, options?: Core.RequestOptions, ): Core.APIPromise { if (isRequestOptions(params)) { return this.clear({}, params); } const { 'x-prefect-api-version': xPrefectAPIVersion, ...body } = params; return this._client.post('/api/admin/database/clear', { body, ...options, headers: { Accept: '*/*', ...(xPrefectAPIVersion != null ? { 'x-prefect-api-version': xPrefectAPIVersion } : undefined), ...options?.headers, }, }); } /** * Drop all database objects. */ drop(params?: DatabaseDropParams, options?: Core.RequestOptions): Core.APIPromise; drop(options?: Core.RequestOptions): Core.APIPromise; drop( params: DatabaseDropParams | Core.RequestOptions = {}, options?: Core.RequestOptions, ): Core.APIPromise { if (isRequestOptions(params)) { return this.drop({}, params); } const { 'x-prefect-api-version': xPrefectAPIVersion, ...body } = params; return this._client.post('/api/admin/database/drop', { body, ...options, headers: { Accept: '*/*', ...(xPrefectAPIVersion != null ? { 'x-prefect-api-version': xPrefectAPIVersion } : undefined), ...options?.headers, }, }); } } export interface DatabaseCreateParams { /** * Body param: Pass confirm=True to confirm you want to modify the database. */ confirm?: boolean; /** * Header param: */ 'x-prefect-api-version'?: string; } export interface DatabaseClearParams { /** * Body param: Pass confirm=True to confirm you want to modify the database. */ confirm?: boolean; /** * Header param: */ 'x-prefect-api-version'?: string; } export interface DatabaseDropParams { /** * Body param: Pass confirm=True to confirm you want to modify the database. */ confirm?: boolean; /** * Header param: */ 'x-prefect-api-version'?: string; } export namespace Database { export import DatabaseCreateParams = DatabaseAPI.DatabaseCreateParams; export import DatabaseClearParams = DatabaseAPI.DatabaseClearParams; export import DatabaseDropParams = DatabaseAPI.DatabaseDropParams; }