@sassoftware/vi-api
Version:
Types used in the SAS Visual Investigator API
45 lines (44 loc) • 2.68 kB
TypeScript
import { Template, TemplateResourceSummary } from "../svi-datahub";
import { ApplicationType, TemplateType } from "../page-admin/page-admin-api";
/**
* This API provides functionality that pertains to the page templates.
*
* Accessed from the window at `window.sas.vi.pageTemplate`.
*
* @example window.sas.vi.pageTemplate.getPageTemplateById(templateNumber);
* @category API
*/
export interface PageTemplateApi {
/**
* @method
* @description Retrieves all templates matching the parameters.
* @param entityType {string} The object type for which the templates are to be retrieved.
* @param includeNoDataSource {boolean} Boolean to determine whether templates with no dataSource should be included.
* @param clientApplication {ApplicationType} The name of the application type used for this page. Must be a valid datahub client application (for example, desktop | mobile).
* @param templateType {TemplateType} The name of the template type used for this page. Must be a valid datahub template type (for example, home | page).
* @returns A promise of an array of {@link TemplateResourceSummary}.
*/
getPageTemplatesByType(entityType: string, includeNoDataSource: boolean, clientApplication: ApplicationType, templateType: TemplateType): Promise<TemplateResourceSummary[]>;
/**
* @method
* @description Gets the page template with the specified ID.
* @param templateId {number} The ID of the page template.
* @returns A promise containing the page template metadata {@link Template}.
*/
getPageTemplateById(templateId: number): Promise<Template>;
/**
* @method
* @description Gets the page template with the specified UUID.
* @param templateUuid {string} The UUID of the page template.
* @returns A promise containing the page template metadata {@link Template}.
*/
getPageTemplateByUuid(templateUuid: string): Promise<Template>;
/**
* @method
* @description Get all templates of a specific client and template type. If null params defaults to clientApplication = DESKTOP, templateType = PAGE
* @param [clientApplication] {ApplicationType} The name of the application type used for this page. Must be a valid datahub client application (for example, desktop | mobile).
* @param [templateType] {TemplateType} The name of the template type used for this page. Must be a valid datahub template type (for example, home | page).
* @returns A promise which returns an array of {@link TemplateResourceSummary}
*/
getTemplates(clientApplication?: ApplicationType, templateType?: TemplateType): Promise<TemplateResourceSummary[]>;
}