/** This is spectacularly generated code by spectacular based on Qlik Cloud Services APIs */ import Auth from '../auth/auth.js'; import type { Config } from '../types/types.js'; /** The theme model. @param author - Author of the theme. @param createdAt - @param dependencies - Map of dependencies describing version of the component it requires. @param description - Description of the theme. @param file - The file that was uploaded with the theme. @param homepage - Home page of the theme. @param icon - Icon to show in the client. @param id - @param keywords - Keywords for the theme. @param license - Under which license this theme is published. @param name - The display name of this theme. @param qextFilename - The name of the qext file that was uploaded with this theme. @param qextVersion - The version from the qext file that was uploaded with this extension. @param repository - Link to the theme source code. @param supplier - Supplier of the theme. @param tags - List of tags. @param tenantId - @param type - The type of this theme (visualization, etc.). @param updateAt - @param userId - @param version - Version of the theme. @param auth - Auth object used to make requests */ export declare class Theme { auth: Auth; author?: string; createdAt?: string; dependencies?: object; description?: string; file?: object; homepage?: string; icon?: string; id?: string; keywords?: string; license?: string; name?: string; qextFilename?: string; qextVersion?: string; repository?: string; supplier?: string; tags?: Array; tenantId?: string; type?: string; updateAt?: string; userId?: string; version?: string; [key: string]: any; constructor({ author, createdAt, dependencies, description, file, homepage, icon, id, keywords, license, name, qextFilename, qextVersion, repository, supplier, tags, tenantId, type, updateAt, userId, version, ...rest }: { author?: string; createdAt?: string; dependencies?: object; description?: string; file?: object; homepage?: string; icon?: string; id?: string; keywords?: string; license?: string; name?: string; qextFilename?: string; qextVersion?: string; repository?: string; supplier?: string; tags?: Array; tenantId?: string; type?: string; updateAt?: string; userId?: string; version?: string; }, auth?: Auth); /** Downloads a file from the theme archive. @param filepath - Path to the file archive for the specified theme archive. Folders separated with forward slashes. */ getFileByFilepath(filepath: string): Promise; /** Downloads the theme as an archive. */ getFile(): Promise; /** Deletes a specific theme. */ delete(): Promise; /** Updates a specific theme with provided data. If a file is provided, the data field is not required. @param data - @param file - Theme archive. */ patches(data?: Theme, file?: Buffer): Promise; } export type ThemeDef = { /** Author of the theme. */ author?: string; /** Map of dependencies describing version of the component it requires. */ dependencies?: object; /** Description of the theme. */ description?: string; /** The file that was uploaded with the theme. */ file?: object; /** Home page of the theme. */ homepage?: string; /** Icon to show in the client. */ icon?: string; /** Keywords for the theme. */ keywords?: string; /** Under which license this theme is published. */ license?: string; /** The display name of this theme. */ name?: string; /** The name of the qext file that was uploaded with this theme. */ qextFilename?: string; /** The version from the qext file that was uploaded with this extension. */ qextVersion?: string; /** Link to the theme source code. */ repository?: string; /** Supplier of the theme. */ supplier?: string; /** List of tags. */ tags?: Array; /** The type of this theme (visualization, etc.). */ type?: string; /** Version of the theme. */ version?: string; [key: string]: any; }; /** @param data - @param auth - Auth object used to make requests */ export declare class ThemesClass { auth: Auth; data?: Array; [key: string]: any; constructor({ data, ...rest }: { data?: Array; }, auth?: Auth); } export declare class Themes { auth: Auth; config: Config; constructor(config: Config | Auth); /** Returns a specific theme. @param id - Theme identifier or its qextFilename */ get(id: string): Promise; /** Lists all themes. */ getThemes(): Promise; /** Creates a new theme. If a file is provided, the data field is not required. @param data - @param file - Theme archive. */ create(data?: ThemeDef, file?: Buffer): Promise; }