import { Method } from 'axios'; /** * Abstract class that defines the required functions to properly invoke a BambuMeta request from a client application. */ export declare abstract class Executable { prepareRequest(options: { execute: (executable: Executable) => Promise; }): Promise; /** * This function returns any body object that would be passed to the API request. */ abstract getBody(): any; /** * The URL path to invoke. * @param tenantId The tenantId provided by the BambuMeta client. */ abstract getURLPath(tenantId?: string): string; /** * The rest function method to invoke the api with. */ abstract getMethod(): Method; /** * This returns the proper response type for the execute function. * @param apiResponse The response from the API request. */ abstract getResponse(apiResponse: any): T; /** * This function overloads the default rootPath for the API request. */ abstract getRootPath(): string | undefined; } export interface IPrepareRequestOptions { execute(executable: Executable): Promise; }