mcdev
Version:
Accenture Salesforce Marketing Cloud DevTools
204 lines • 8.36 kB
TypeScript
export default TransactionalSMS;
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
*/
/**
* TransactionalSMS MetadataType
*
* @augments TransactionalMessage
*/
declare class TransactionalSMS extends TransactionalMessage {
static subType: string;
/**
* clean up after deleting a metadata item
*
* @param {string} customerKey Identifier of metadata item
* @returns {Promise.<void>} -
*/
static postDeleteTasks(customerKey: string): Promise<void>;
/**
* helper for {@link TransactionalSMS.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>;
/**
* manages post retrieve steps
*
* @param {MetadataTypeItem} metadata a single item
* @returns {Promise.<CodeExtractItem>} Array with one metadata object and one ssjs string
*/
static postRetrieveTasks(metadata: MetadataTypeItem): Promise<CodeExtractItem>;
/**
* helper for {@link TransactionalSMS.postRetrieveTasks} and {@link TransactionalSMS._buildForNested}
*
* @param {string} metadataScript the code of the file
* @returns {Promise.<{fileExt:string,code:string}>} returns found extension and file content
*/
static prepExtractedCode(metadataScript: string): Promise<{
fileExt: string;
code: string;
}>;
/**
* helper for {@link TransactionalSMS.buildTemplateForNested} / {@link TransactionalSMS.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[][]>;
/**
* very simplified test for HTML code in our SMS
*
* @param {string} code sms source code
* @returns {boolean} true if HTML is found
*/
static _isHTML(code: string): boolean;
}
declare namespace TransactionalSMS {
let definition: {
bodyIteratorField: string;
dependencies: string[];
dependencyGraph: {
mobileKeyword: string[];
mobileCode: string[];
};
hasExtended: boolean;
idField: string;
keyIsFixed: boolean;
keyField: string;
nameField: string;
createdDateField: string;
createdNameField: any;
lastmodDateField: string;
lastmodNameField: any;
restPagination: boolean;
restPageSize: number;
type: string;
typeDescription: string;
typeRetrieveByDefault: boolean;
typeCdpByDefault: boolean;
typeName: string;
fields: {
name: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
definitionKey: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
description: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
requestId: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
definitionId: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
status: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
createdDate: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
modifiedDate: {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
'content.message': {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
'subscriptions.shortCode': {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
'subscriptions.countryCode': {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
'subscriptions.autoAddSubscriber': {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
'subscriptions.updateSubscriber': {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
'subscriptions.keyword': {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
'subscriptions.r__mobileKeyword_key': {
isCreateable: boolean;
isUpdateable: boolean;
retrieving: boolean;
template: boolean;
};
};
};
}
import TransactionalMessage from './TransactionalMessage.js';
//# sourceMappingURL=TransactionalSMS.d.ts.map