UNPKG

mcdev

Version:

Accenture Salesforce Marketing Cloud DevTools

437 lines 17 kB
export default MobileKeyword; export type BuObject = import("../../types/mcdev.d.js").BuObject; export type CodeExtract = import("../../types/mcdev.d.js").CodeExtract; export type CodeExtractItem = import("../../types/mcdev.d.js").CodeExtractItem; export type MetadataTypeItem = import("../../types/mcdev.d.js").MetadataTypeItem; export type MetadataTypeItemDiff = import("../../types/mcdev.d.js").MetadataTypeItemDiff; export type MetadataTypeItemObj = import("../../types/mcdev.d.js").MetadataTypeItemObj; export type MetadataTypeMap = import("../../types/mcdev.d.js").MetadataTypeMap; export type MetadataTypeMapObj = import("../../types/mcdev.d.js").MetadataTypeMapObj; export type SoapRequestParams = import("../../types/mcdev.d.js").SoapRequestParams; export type TemplateMap = import("../../types/mcdev.d.js").TemplateMap; /** * @typedef {import('../../types/mcdev.d.js').BuObject} BuObject * @typedef {import('../../types/mcdev.d.js').CodeExtract} CodeExtract * @typedef {import('../../types/mcdev.d.js').CodeExtractItem} CodeExtractItem * @typedef {import('../../types/mcdev.d.js').MetadataTypeItem} MetadataTypeItem * @typedef {import('../../types/mcdev.d.js').MetadataTypeItemDiff} MetadataTypeItemDiff * @typedef {import('../../types/mcdev.d.js').MetadataTypeItemObj} MetadataTypeItemObj * @typedef {import('../../types/mcdev.d.js').MetadataTypeMap} MetadataTypeMap * @typedef {import('../../types/mcdev.d.js').MetadataTypeMapObj} MetadataTypeMapObj * @typedef {import('../../types/mcdev.d.js').SoapRequestParams} SoapRequestParams * @typedef {import('../../types/mcdev.d.js').TemplateMap} TemplateMap */ /** * MobileKeyword MetadataType * * @augments MetadataType */ declare class MobileKeyword extends MetadataType { /** * Retrieves Metadata of Mobile Keywords * Endpoint /legacy/v1/beta/mobile/keyword/ return all Mobile Keywords with all details. * * @param {string} retrieveDir Directory where retrieved metadata directory will be saved * @param {void | string[]} [_] unused parameter * @param {void | string[]} [__] unused parameter * @param {string} [key] customer key of single item to retrieve * @returns {Promise.<MetadataTypeMapObj>} Promise of metadata */ static retrieve(retrieveDir: string, _?: void | string[], __?: void | string[], key?: string): Promise<MetadataTypeMapObj>; /** * helper for {@link MobileKeyword.preDeployTasks} and {@link MobileKeyword.createOrUpdate} to ensure we have code & keyword properly set * * @param {MetadataTypeItem} metadata single item */ static "__#6@#setCodeAndKeyword"(metadata: MetadataTypeItem): void; /** * Retrieves event definition metadata for caching * * @param {void | string[]} [_] parameter not used * @param {void | string[]} [__] parameter not used * @param {string} [key] customer key of single item to retrieve * @returns {Promise.<MetadataTypeMapObj>} Promise of metadata */ static retrieveForCache(_?: void | string[], __?: void | string[], key?: string): Promise<MetadataTypeMapObj>; /** * retrieve an item and create a template from it * * @deprecated Use `retrieve` followed by `build` instead. `retrieveAsTemplate` will be removed in a future version. * @param {string} templateDir Directory where retrieved metadata directory will be saved * @param {string} key name of the metadata file * @param {TemplateMap} templateVariables variables to be replaced in the metadata * @returns {Promise.<MetadataTypeItemObj>} Promise of metadata */ static retrieveAsTemplate(templateDir: string, key: string, templateVariables: TemplateMap): Promise<MetadataTypeItemObj>; /** * helper for {@link MobileKeyword.retrieve} and {@link MobileKeyword.retrieveAsTemplate} * * @param {string} key customer key of single item to retrieve / name of the metadata file * @returns {Array} key, queryParams */ static "__#6@#getRetrieveKeyAndUrl"(key: string): any[]; /** * Creates a single item * * @param {MetadataTypeItem} metadata a single item * @returns {Promise} Promise */ static create(metadata: MetadataTypeItem): Promise<any>; /** * Updates a single item * * @param {MetadataTypeItem} metadata a single item * @returns {Promise} Promise */ static update(metadata: MetadataTypeItem): Promise<any>; /** * manages post retrieve steps * * @param {MetadataTypeItem} metadata a single item * @returns {CodeExtractItem | MetadataTypeItem | void} Array with one metadata object and one ssjs string; or single metadata object; nothing if filtered */ static postRetrieveTasks(metadata: MetadataTypeItem): CodeExtractItem | MetadataTypeItem | void; /** * helper for {@link MobileKeyword.postRetrieveTasks} and {@link MobileKeyword._buildForNested} * * @param {string} metadataScript the code of the file * @returns {{fileExt:string,code:string}} returns found extension and file content */ static prepExtractedCode(metadataScript: string): { fileExt: string; code: string; }; /** * helper for {@link MobileKeyword.buildTemplateForNested} / {@link MobileKeyword.buildDefinitionForNested} * handles extracted code if any are found for complex types * * @param {string} templateDir Directory where metadata templates are stored * @param {string|string[]} targetDir (List of) Directory where built definitions will be saved * @param {MetadataTypeItem} metadata main JSON file that was read from file system * @param {TemplateMap} templateVariables variables to be replaced in the metadata * @param {string} templateName name of the template to be built * @param {'definition'|'template'} mode defines what we use this helper for * @returns {Promise.<string[][]>} list of extracted files with path-parts provided as an array */ static _buildForNested(templateDir: string, targetDir: string | string[], metadata: MetadataTypeItem, templateVariables: TemplateMap, templateName: string, mode: "definition" | "template"): Promise<string[][]>; /** * helper for {@link MetadataType.createREST} * * @param {MetadataTypeItem} metadataEntry a single metadata Entry * @param {object} apiResponse varies depending on the API call * @returns {Promise.<object>} apiResponse */ static postCreateTasks(metadataEntry: MetadataTypeItem, apiResponse: object): Promise<object>; /** * helper for {@link MetadataType.updateREST} * * @param {MetadataTypeItem} metadataEntry a single metadata Entry * @param {object} apiResponse varies depending on the API call * @returns {Promise.<object>} apiResponse, potentially modified */ static postUpdateTasks(metadataEntry: MetadataTypeItem, apiResponse: object): Promise<object>; /** * helper for {@link MobileKeyword.preDeployTasks} that loads extracted code content back into JSON * * @param {MetadataTypeItem} metadata a single definition * @param {string} deployDir directory of deploy files * @param {string} [templateName] name of the template used to built defintion (prior applying templating) * @returns {Promise.<string>} content for metadata.script */ static _mergeCode(metadata: MetadataTypeItem, deployDir: string, templateName?: string): Promise<string>; /** * clean up after deleting a metadata item * * @param {string} customerKey Identifier of metadata item * @returns {Promise.<void>} - */ static postDeleteTasks(customerKey: string): Promise<void>; } declare namespace MobileKeyword { let definition: { bodyIteratorField: string; dependencies: string[]; dependencyGraph: { mobileCode: string[]; }; hasExtended: boolean; idField: string; keyIsFixed: boolean; keyField: string; nameField: string; createdDateField: string; createdNameField: string; lastmodDateField: string; lastmodNameField: any; restPagination: boolean; restPageSize: number; maxKeyLength: number; type: string; typeDescription: string; typeRetrieveByDefault: boolean; typeCdpByDefault: boolean; typeName: string; fields: { id: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; c__codeKeyword: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; r__mobileCode_key: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; keyword: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; createdDate: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; lastUpdated: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; startDate: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; endDate: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; createdBy: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'createdBy.id': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'createdBy.name': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'createdBy.lastUpdated': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; dipSwitches: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; isInherited: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; decodedId: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; restriction: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; keywordType: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; companyName: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; responseMessage: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; status: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; messages: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; code: { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.code': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.id': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.createdDate': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.lastUpdated': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.startDate': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.endDate': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.keywordLimit': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.keywordsUsed': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.codeType': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.isShortCode': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.keywordsUsedOther': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.isGsmCharacterSetOnly': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.isMms': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.isStackIndependant': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.supportsConcatenation': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.isClientOwned': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.isOwner': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.dipSwitches': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.sendableCountries': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.countryCode': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; 'code.moEngineVersion': { isCreateable: boolean; isUpdateable: boolean; retrieving: boolean; template: boolean; }; }; }; } import MetadataType from './MetadataType.js'; //# sourceMappingURL=MobileKeyword.d.ts.map