UNPKG

@rockcarver/frodo-lib

Version:

A library to manage ForgeRock Identity Cloud tenants, ForgeOps deployments, and classic deployments.

188 lines 8.65 kB
import { IdObjectSkeletonInterface } from '../api/ApiTypes'; import { State } from '../shared/State'; import { ExportMetaData } from './OpsTypes'; export type EmailTemplate = { /** * Email template type key used to build the IDM id: 'emailTemplate/<id>' */ EMAIL_TEMPLATE_TYPE: string; /** * Create an empty email template export template * @returns {EmailTemplateExportInterface} an empty email template export template */ createEmailTemplateExportTemplate(): EmailTemplateExportInterface; /** * Get all email templates * @returns {Promise<EmailTemplateSkeleton[]>} a promise that resolves to an array of email template objects */ readEmailTemplates(): Promise<EmailTemplateSkeleton[]>; /** * Get email template * @param {string} templateId id/name of the email template without the type prefix * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves an email template object */ readEmailTemplate(templateId: string): Promise<EmailTemplateSkeleton>; /** * Export all email templates. The response can be saved to file as is. * @returns {Promise<EmailTemplateExportInterface>} Promise resolving to a EmailTemplateExportInterface object. */ exportEmailTemplates(): Promise<EmailTemplateExportInterface>; /** * Create email template * @param {string} templateId id/name of the email template without the type prefix * @param {EmailTemplateSkeleton} templateData email template object * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves to an email template object */ createEmailTemplate(templateId: string, templateData: EmailTemplateSkeleton): Promise<EmailTemplateSkeleton>; /** * Update or create email template * @param {string} templateId id/name of the email template without the type prefix * @param {EmailTemplateSkeleton} templateData email template object * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves to an email template object */ updateEmailTemplate(templateId: string, templateData: EmailTemplateSkeleton): Promise<EmailTemplateSkeleton>; /** * Import all email templates * @param {EmailTemplateExportInterface} importData import data * @returns {Promise<IdObjectSkeletonInterface[]>} a promise resolving to an array of email template objects */ importEmailTemplates(importData: EmailTemplateExportInterface): Promise<EmailTemplateSkeleton[]>; /** * Delete all email templates * @returns {Promise<EmailTemplateSkeleton[]>} a promise that resolves to an array of email template objects */ deleteEmailTemplates(): Promise<EmailTemplateSkeleton[]>; /** * Delete email template * @param {string} templateId id/name of the email template without the type prefix 'emailTemplate/' * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves an email template object */ deleteEmailTemplate(templateId: string): Promise<EmailTemplateSkeleton>; /** * Get all email templates * @returns {Promise<EmailTemplateSkeleton[]>} a promise that resolves to an array of email template objects * @deprecated since v2.0.0 use {@link EmailTemplate.readEmailTemplates | readEmailTemplates} instead * ```javascript * readEmailTemplates(): Promise<EmailTemplateSkeleton[]> * ``` * @group Deprecated */ getEmailTemplates(): Promise<EmailTemplateSkeleton[]>; /** * Get email template * @param {string} templateId id/name of the email template without the type prefix * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves an email template object * @deprecated since v2.0.0 use {@link EmailTemplate.readEmailTemplate | readEmailTemplate} instead * ```javascript * readEmailTemplate(templateId: string): Promise<EmailTemplateSkeleton> * ``` * @group Deprecated */ getEmailTemplate(templateId: string): Promise<EmailTemplateSkeleton>; /** * Put email template * @param {string} templateId id/name of the email template without the type prefix * @param {Object} templateData email template object * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves to an email template object * @deprecated since v2.0.0 use {@link EmailTemplate.updateEmailTemplate | updateEmailTemplate} or {@link EmailTemplate.createEmailTemplate | createEmailTemplate} instead * ```javascript * updateEmailTemplate(templateId: string, templateData: EmailTemplateSkeleton): Promise<EmailTemplateSkeleton> * createEmailTemplate(templateId: string, templateData: EmailTemplateSkeleton): Promise<EmailTemplateSkeleton> * ``` * @group Deprecated */ putEmailTemplate(templateId: string, templateData: EmailTemplateSkeleton): Promise<EmailTemplateSkeleton>; }; declare const _default: (state: State) => EmailTemplate; export default _default; /** * Email template type key used to build the IDM id: 'emailTemplate/<id>' */ export declare const EMAIL_TEMPLATE_TYPE = "emailTemplate"; export type EmailTemplateSkeleton = IdObjectSkeletonInterface & { defaultLocale?: string; displayName?: string; enabled?: boolean; from: string; subject: Record<string, string>; message?: Record<string, string>; html?: Record<string, string>; }; export interface EmailTemplateExportInterface { meta?: ExportMetaData; emailTemplate: Record<string, EmailTemplateSkeleton>; } export declare function createEmailTemplateExportTemplate({ state, }: { state: State; }): EmailTemplateExportInterface; /** * Get all email templates * @returns {Promise<EmailTemplateSkeleton[]>} a promise that resolves to an array of email template objects */ export declare function readEmailTemplates({ state, }: { state: State; }): Promise<EmailTemplateSkeleton[]>; /** * Get email template * @param {string} templateId id/name of the email template without the type prefix * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves an email template object */ export declare function readEmailTemplate({ templateId, state, }: { templateId: string; state: State; }): Promise<EmailTemplateSkeleton>; /** * Export all email templates. The response can be saved to file as is. * @returns {Promise<EmailTemplateExportInterface>} Promise resolving to a EmailTemplateExportInterface object. */ export declare function exportEmailTemplates({ state, }: { state: State; }): Promise<EmailTemplateExportInterface>; /** * Create email template * @param {string} templateId id/name of the email template without the type prefix * @param {EmailTemplateSkeleton} templateData email template object * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves to an email template object */ export declare function createEmailTemplate({ templateId, templateData, state, }: { templateId: string; templateData: EmailTemplateSkeleton; state: State; }): Promise<EmailTemplateSkeleton>; /** * Update or create email template * @param {string} templateId id/name of the email template without the type prefix * @param {EmailTemplateSkeleton} templateData email template object * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves to an email template object */ export declare function updateEmailTemplate({ templateId, templateData, state, }: { templateId: string; templateData: EmailTemplateSkeleton; state: State; }): Promise<EmailTemplateSkeleton>; /** * Import email templates. * @param {EmailTemplateExportInterface} importData email template import data. * @returns {Promise<SocialIdpSkeleton[]>} a promise resolving to an array of email template objects */ export declare function importEmailTemplates({ importData, state, }: { importData: EmailTemplateExportInterface; state: State; }): Promise<EmailTemplateSkeleton[]>; /** * Delete all email templates * @returns {Promise<EmailTemplateSkeleton[]>} a promise that resolves to an array of email template objects */ export declare function deleteEmailTemplates({ state, }: { state: State; }): Promise<EmailTemplateSkeleton[]>; /** * Delete email template * @param {string} templateId id/name of the email template without the type prefix 'emailTemplate/' * @returns {Promise<EmailTemplateSkeleton>} a promise that resolves an email template object */ export declare function deleteEmailTemplate({ templateId, state, }: { templateId: string; state: State; }): Promise<EmailTemplateSkeleton>; //# sourceMappingURL=EmailTemplateOps.d.ts.map