import { default as Sdk, ThemeInstall, GeneralResponse } from '@tray-tecnologia/theme-sdk'; import { LimitFunction } from 'p-limit'; import { ConfigurationFile, DownloadCommandResponse, RemoveCommandResponse, UploadCommandResponse } from '#cli/types'; export declare class Tray { readonly token: string; themeId?: number; previewUrl?: string; readonly debug: boolean; readonly api: Sdk; readonly limit: LimitFunction; /** * Create new Tray instance * @param {ConfigurationFile} */ constructor({ token, themeId, previewUrl, debug }: ConfigurationFile); /** * Load configuration settings from config.json and create an instance of class. * @return {Promise} Returns Tray instance if promises resolves, or CliError otherwise. */ static initiateFromConfigFile(): Promise; /** * Configure CLI use generating config.json file * @return {Promise} Return string if promise resolves, ApiError or CliError otherwise */ configure(): Promise; /** * List all available themes. * @return {Promise} Return ThemeInstall if promises resolves, BaseError or CliError otherwise. */ list(): Promise; /** * Create a clean theme * @returns Promise ThemeInstall. */ createCleanTheme(): Promise; /** * Delete requested theme. * @param {number} id Theme id to be deleted * @return {Promise} Return true with promise resolves, CliError or BaseError otherwise. */ delete(id?: number | undefined): Promise; /** * Download configured theme * @param {string[]} files Files to be downloaded * @return {Promise} Returns DownloadCommandResponse when promises resolves */ download(files?: string[]): Promise; /** * Upload files to theme * @param {string[]} files Files to be uploaded. If not provided all files in current folder and subfolder will be uploaded. * Config.json and files starting with dot will always be ignored. * @return {Promise} Returns UploadCommandResponse object if promises resolves, CliError or ApiError otherwise. */ upload(files?: string[]): Promise; /** * Upload core files, excluding configs/settings.json and images folder. * Config.json and files starting with dot will always be ignored. * @return {Promise} Returns UploadCommandResponse object if promises resolves, CliError or ApiError otherwise. */ uploadCore(): Promise; /** * Delete theme files * @param {string[]} files Files to be removes. * @return {Promise} Returns RemoveCommandResponse object if promises resolves, CliError or ApiError otherwise. */ remove(files: string[]): Promise; } //# sourceMappingURL=Tray.d.ts.map