TemplateRegistry
Defined in: packages/template/src/registry/template.registry.ts:79
Extends
Section titled “Extends”EventEmitter
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new TemplateRegistry(
options?):TemplateRegistry
Defined in: packages/template/src/registry/template.registry.ts:99
Parameters
Section titled “Parameters”options?
Section titled “options?”Partial<TemplateRegistryOptions> = {}
Returns
Section titled “Returns”TemplateRegistry
Overrides
Section titled “Overrides”EventEmitter.constructor
Methods
Section titled “Methods”addListener()
Section titled “addListener()”addListener(
eventName,listener):this
Defined in: packages/template/src/shared/event-emitter.ts:16
Parameters
Section titled “Parameters”eventName
Section titled “eventName”string
listener
Section titled “listener”Listener
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”EventEmitter.addListener
clear()
Section titled “clear()”clear():
void
Defined in: packages/template/src/registry/template.registry.ts:596
Clear all templates (use with caution!)
Returns
Section titled “Returns”void
delete()
Section titled “delete()”delete(
templateId):Promise<boolean>
Defined in: packages/template/src/registry/template.registry.ts:362
Delete template
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
Returns
Section titled “Returns”Promise<boolean>
destroy()
Section titled “destroy()”destroy():
void
Defined in: packages/template/src/registry/template.registry.ts:610
Stop the registry and cleanup
Returns
Section titled “Returns”void
emit()
Section titled “emit()”emit(
eventName, …args):boolean
Defined in: packages/template/src/shared/event-emitter.ts:44
Parameters
Section titled “Parameters”eventName
Section titled “eventName”string
…unknown[]
Returns
Section titled “Returns”boolean
Inherited from
Section titled “Inherited from”EventEmitter.emit
export()
Section titled “export()”export(
filters?):string
Defined in: packages/template/src/registry/template.registry.ts:537
Export templates to JSON
Parameters
Section titled “Parameters”filters?
Section titled “filters?”Returns
Section titled “Returns”string
get(
templateId): {buttons?:object[];category:TemplateCategory;code:string;content:string;id:string;metadata: {approvedAt?:Date;createdAt:Date;rejectedAt?:Date;rejectionReason?:string;updatedAt:Date;usage: {delivered:number;failed:number;sent:number; }; };name:string;provider:string;status:TemplateStatus;variables?:object[]; } |null
Defined in: packages/template/src/registry/template.registry.ts:208
Get template by ID
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
Returns
Section titled “Returns”{ buttons?: object[]; category: TemplateCategory; code: string; content: string; id: string; metadata: { approvedAt?: Date; createdAt: Date; rejectedAt?: Date; rejectionReason?: string; updatedAt: Date; usage: { delivered: number; failed: number; sent: number; }; }; name: string; provider: string; status: TemplateStatus; variables?: object[]; } | null
getByCategory()
Section titled “getByCategory()”getByCategory(
category):object[]
Defined in: packages/template/src/registry/template.registry.ts:350
Get templates by category
Parameters
Section titled “Parameters”category
Section titled “category”Returns
Section titled “Returns”object[]
getByCode()
Section titled “getByCode()”getByCode(
code,provider): {buttons?:object[];category:TemplateCategory;code:string;content:string;id:string;metadata: {approvedAt?:Date;createdAt:Date;rejectedAt?:Date;rejectionReason?:string;updatedAt:Date;usage: {delivered:number;failed:number;sent:number; }; };name:string;provider:string;status:TemplateStatus;variables?:object[]; } |null
Defined in: packages/template/src/registry/template.registry.ts:215
Get template by code and provider
Parameters
Section titled “Parameters”string
provider
Section titled “provider”string
Returns
Section titled “Returns”{ buttons?: object[]; category: TemplateCategory; code: string; content: string; id: string; metadata: { approvedAt?: Date; createdAt: Date; rejectedAt?: Date; rejectionReason?: string; updatedAt: Date; usage: { delivered: number; failed: number; sent: number; }; }; name: string; provider: string; status: TemplateStatus; variables?: object[]; } | null
getByProvider()
Section titled “getByProvider()”getByProvider(
provider):object[]
Defined in: packages/template/src/registry/template.registry.ts:338
Get templates by provider
Parameters
Section titled “Parameters”provider
Section titled “provider”string
Returns
Section titled “Returns”object[]
getHistory()
Section titled “getHistory()”getHistory(
templateId):TemplateHistory|null
Defined in: packages/template/src/registry/template.registry.ts:399
Get template version history
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
Returns
Section titled “Returns”TemplateHistory | null
getStats()
Section titled “getStats()”getStats():
object
Defined in: packages/template/src/registry/template.registry.ts:508
Get registry statistics
Returns
Section titled “Returns”object
byCategory
Section titled “byCategory”byCategory:
Record<string,number>
byProvider
Section titled “byProvider”byProvider:
Record<string,number>
byStatus
Section titled “byStatus”byStatus:
Record<string,number>
totalTemplates
Section titled “totalTemplates”totalTemplates:
number
getUsageStats()
Section titled “getUsageStats()”getUsageStats(
templateId):TemplateUsageStats|null
Defined in: packages/template/src/registry/template.registry.ts:441
Get template usage statistics
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
Returns
Section titled “Returns”TemplateUsageStats | null
getVersion()
Section titled “getVersion()”getVersion(
templateId,version): {buttons?:object[];category:TemplateCategory;code:string;content:string;id:string;metadata: {approvedAt?:Date;createdAt:Date;rejectedAt?:Date;rejectionReason?:string;updatedAt:Date;usage: {delivered:number;failed:number;sent:number; }; };name:string;provider:string;status:TemplateStatus;variables?:object[]; } |null
Defined in: packages/template/src/registry/template.registry.ts:406
Get specific template version
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
version
Section titled “version”number
Returns
Section titled “Returns”{ buttons?: object[]; category: TemplateCategory; code: string; content: string; id: string; metadata: { approvedAt?: Date; createdAt: Date; rejectedAt?: Date; rejectionReason?: string; updatedAt: Date; usage: { delivered: number; failed: number; sent: number; }; }; name: string; provider: string; status: TemplateStatus; variables?: object[]; } | null
import()
Section titled “import()”import(
jsonData,options?):Promise<{errors:string[];imported:number;skipped:number; }>
Defined in: packages/template/src/registry/template.registry.ts:553
Import templates from JSON
Parameters
Section titled “Parameters”jsonData
Section titled “jsonData”string
options?
Section titled “options?”overwrite?
Section titled “overwrite?”boolean
Returns
Section titled “Returns”Promise<{ errors: string[]; imported: number; skipped: number; }>
off(
eventName,listener):this
Defined in: packages/template/src/shared/event-emitter.ts:20
Parameters
Section titled “Parameters”eventName
Section titled “eventName”string
listener
Section titled “listener”Listener
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”EventEmitter.off
on(
eventName,listener):this
Defined in: packages/template/src/shared/event-emitter.ts:9
Parameters
Section titled “Parameters”eventName
Section titled “eventName”string
listener
Section titled “listener”Listener
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”EventEmitter.on
once()
Section titled “once()”once(
eventName,listener):this
Defined in: packages/template/src/shared/event-emitter.ts:35
Parameters
Section titled “Parameters”eventName
Section titled “eventName”string
listener
Section titled “listener”Listener
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”EventEmitter.once
register()
Section titled “register()”register(
template):Promise<void>
Defined in: packages/template/src/registry/template.registry.ts:111
Register a new template
Parameters
Section titled “Parameters”template
Section titled “template”buttons?
Section titled “buttons?”object[] = ...
category
Section titled “category”TemplateCategory = ...
string = ...
content
Section titled “content”string = ...
string = ...
metadata
Section titled “metadata”{ approvedAt?: Date; createdAt: Date; rejectedAt?: Date; rejectionReason?: string; updatedAt: Date; usage: { delivered: number; failed: number; sent: number; }; } = TemplateMetadataSchema
metadata.approvedAt?
Section titled “metadata.approvedAt?”Date = ...
metadata.createdAt
Section titled “metadata.createdAt”Date = ...
metadata.rejectedAt?
Section titled “metadata.rejectedAt?”Date = ...
metadata.rejectionReason?
Section titled “metadata.rejectionReason?”string = ...
metadata.updatedAt
Section titled “metadata.updatedAt”Date = ...
metadata.usage
Section titled “metadata.usage”{ delivered: number; failed: number; sent: number; } = TemplateUsageStatsSchema
metadata.usage.delivered
Section titled “metadata.usage.delivered”number = ...
metadata.usage.failed
Section titled “metadata.usage.failed”number = ...
metadata.usage.sent
Section titled “metadata.usage.sent”number = ...
string = ...
provider
Section titled “provider”string = ...
status
Section titled “status”TemplateStatus = ...
variables?
Section titled “variables?”object[] = ...
Returns
Section titled “Returns”Promise<void>
removeAllListeners()
Section titled “removeAllListeners()”removeAllListeners(
eventName?):this
Defined in: packages/template/src/shared/event-emitter.ts:57
Parameters
Section titled “Parameters”eventName?
Section titled “eventName?”string
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”EventEmitter.removeAllListeners
removeListener()
Section titled “removeListener()”removeListener(
eventName,listener):this
Defined in: packages/template/src/shared/event-emitter.ts:31
Parameters
Section titled “Parameters”eventName
Section titled “eventName”string
listener
Section titled “listener”Listener
Returns
Section titled “Returns”this
Inherited from
Section titled “Inherited from”EventEmitter.removeListener
restoreVersion()
Section titled “restoreVersion()”restoreVersion(
templateId,version):Promise<{buttons?:object[];category:TemplateCategory;code:string;content:string;id:string;metadata: {approvedAt?:Date;createdAt:Date;rejectedAt?:Date;rejectionReason?:string;updatedAt:Date;usage: {delivered:number;failed:number;sent:number; }; };name:string;provider:string;status:TemplateStatus;variables?:object[]; }>
Defined in: packages/template/src/registry/template.registry.ts:417
Restore template to a specific version
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
version
Section titled “version”number
Returns
Section titled “Returns”Promise<{ buttons?: object[]; category: TemplateCategory; code: string; content: string; id: string; metadata: { approvedAt?: Date; createdAt: Date; rejectedAt?: Date; rejectionReason?: string; updatedAt: Date; usage: { delivered: number; failed: number; sent: number; }; }; name: string; provider: string; status: TemplateStatus; variables?: object[]; }>
search()
Section titled “search()”search(
filters?,options?):TemplateSearchResult
Defined in: packages/template/src/registry/template.registry.ts:222
Search templates with filters and pagination
Parameters
Section titled “Parameters”filters?
Section titled “filters?”options?
Section titled “options?”Returns
Section titled “Returns”update()
Section titled “update()”update(
templateId,updates):Promise<{buttons?:object[];category:TemplateCategory;code:string;content:string;id:string;metadata: {approvedAt?:Date;createdAt:Date;rejectedAt?:Date;rejectionReason?:string;updatedAt:Date;usage: {delivered:number;failed:number;sent:number; }; };name:string;provider:string;status:TemplateStatus;variables?:object[]; }>
Defined in: packages/template/src/registry/template.registry.ts:153
Update an existing template
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
updates
Section titled “updates”Partial<AlimTalkTemplate>
Returns
Section titled “Returns”Promise<{ buttons?: object[]; category: TemplateCategory; code: string; content: string; id: string; metadata: { approvedAt?: Date; createdAt: Date; rejectedAt?: Date; rejectionReason?: string; updatedAt: Date; usage: { delivered: number; failed: number; sent: number; }; }; name: string; provider: string; status: TemplateStatus; variables?: object[]; }>
updateUsageStats()
Section titled “updateUsageStats()”updateUsageStats(
templateId,stats):void
Defined in: packages/template/src/registry/template.registry.ts:448
Update template usage statistics
Parameters
Section titled “Parameters”templateId
Section titled “templateId”string
delivered?
Section titled “delivered?”number
failed?
Section titled “failed?”number
number
Returns
Section titled “Returns”void