/* Options: Date: 2025-06-02 06:56:53 Version: 8.71 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://team.evovoice.io //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: ExportPackage.* //ExcludeTypes: //DefaultImports: */ export class NodeParameterMap { [key:string] : NodeParameter; public constructor(init?: Partial<NodeParameterMap>) { (Object as any).assign(this, init); } } export interface IReturn<T> { createResponse(): T; } export class Struct { public constructor(init?: Partial<Struct>) { (Object as any).assign(this, init); } } export class Value { public boolValue?: boolean; public stringValue: string; public numberValue?: number; public listValue: Struct[]; public structValue: Struct; public constructor(init?: Partial<Value>) { (Object as any).assign(this, init); } } export enum UserDataFieldModes { Hidden = 'Hidden', ReadOnly = 'ReadOnly', ReadWrite = 'ReadWrite', } export enum EndpointTypes { PhoneNumber = 'PhoneNumber', User = 'User', FaxNumber = 'FaxNumber', EmailAddress = 'EmailAddress', Unused_1 = 'Unused_1', Unused_2 = 'Unused_2', Unused_3 = 'Unused_3', Unused_4 = 'Unused_4', Unused_5 = 'Unused_5', Team = 'Team', Assistant = 'Assistant', } export enum ValueTypes { NotSpecified = 'NotSpecified', String = 'String', Boolean = 'Boolean', Number = 'Number', List = 'List', Struct = 'Struct', Transition = 'Transition', Custom = 'Custom', Date = 'Date', AudioFile = 'AudioFile', TimeZoneId = 'TimeZoneId', PhoneNumber = 'PhoneNumber', User = 'User', Endpoint = 'Endpoint', Time = 'Time', File = 'File', FaxNumber = 'FaxNumber', EmailAccount = 'EmailAccount', Customer = 'Customer', Flow = 'Flow', Team = 'Team', FlowReference = 'FlowReference', Integration = 'Integration', Assistant = 'Assistant', } export enum UIHints { None = 'None', LargeText = 'LargeText', InlineForm = 'InlineForm', Password = 'Password', InlineStruct = 'InlineStruct', } export enum DataFieldUniqueness { NotUnique = 'NotUnique', Unique = 'Unique', UniqueToCustomer = 'UniqueToCustomer', } export class DataField { public id: string; public name: string; public type: ValueTypes; public uiHint: UIHints; public uiTab: string; public isAsync: boolean; public disableBinding: boolean; public structType: DataType; public listType: DataType; public description: string; public possibleValues: string[]; public isOutput: boolean; public customFieldValuesUrl: string; public defaultValue: Value; public transitionNameFormat: string; public uniqueness: DataFieldUniqueness; public voiceOnly: boolean; public conditionalVisibilityField: string; public conditionalVisibilityValue: string; public noEvalTemplate: boolean; public userMode: UserDataFieldModes; public anyValueType: boolean; public constructor(init?: Partial<DataField>) { (Object as any).assign(this, init); } } export class DataType { public typeName: string; public fields: DataField[]; public constructor(init?: Partial<DataType>) { (Object as any).assign(this, init); } } export class SystemSettingsField extends DataField { public value: Value; public constructor(init?: Partial<SystemSettingsField>) { super(init); (Object as any).assign(this, init); } } export class CustomerDataField extends DataField { public showInSearch: boolean; public constructor(init?: Partial<CustomerDataField>) { super(init); (Object as any).assign(this, init); } } export class EndpointDataField extends DataField { public showInSearch: boolean; public showInLists: boolean; public endpointType?: EndpointTypes; public isCallerId: boolean; public isKnob: boolean; public constructor(init?: Partial<EndpointDataField>) { super(init); (Object as any).assign(this, init); } } export class FlowInfo extends EntityInfo { /** @description The name of this flow */ // @ApiMember(Description="The name of this flow") public name: string; /** @description The roles that this flow has */ // @ApiMember(Description="The roles that this flow has") public roles: FlowRoles[]; /** @description What this flow does */ // @ApiMember(Description="What this flow does") public description: string; /** @description Any notes for this flow */ // @ApiMember(Description="Any notes for this flow") public notes: string; /** @description The ID of the account associated with the flow */ // @ApiMember(Description="The ID of the account associated with the flow") public accountId: string; /** @description The name of the account associated with the flow */ // @ApiMember(Description="The name of the account associated with the flow") public accountName: string; /** @description The ID of the customer this flow is associated with */ // @ApiMember(Description="The ID of the customer this flow is associated with") public customerId: string; /** @description The name of the customer this flow is associated with */ // @ApiMember(Description="The name of the customer this flow is associated with") public customerName: string; /** @description The breadcrumb to the flow for this endpoint */ // @ApiMember(Description="The breadcrumb to the flow for this endpoint") public customerBreadcrumb: CustomerBreadcrumb[]; /** @description The nodes in this flow */ // @ApiMember(Description="The nodes in this flow") public nodes: FlowNode[]; /** @description The flow's parameters */ // @ApiMember(Description="The flow's parameters") public parameters: FlowParameter[]; /** @description The flow's exits */ // @ApiMember(Description="The flow's exits") public exits: FlowExit[]; /** @description The UI data for the flow */ // @ApiMember(Description="The UI data for the flow") public ui: FlowUI; /** @description The list of tags for this flow */ // @ApiMember(Description="The list of tags for this flow") public tags: Tag[]; /** @description The number of nodes in this flow */ // @ApiMember(Description="The number of nodes in this flow") public nodeCount: number; public constructor(init?: Partial<FlowInfo>) { super(init); (Object as any).assign(this, init); } } export class PackageInfo { public flows: FlowInfo[]; public customerFields: CustomerDataField[]; public endpointFields: EndpointDataField[]; public systemFields: SystemSettingsField[]; public constructor(init?: Partial<PackageInfo>) { (Object as any).assign(this, init); } } /** @description Export the specified flows into a package */ // @Route("/packages", "GET") // @Api(Description="Export the specified flows into a package") export class ExportPackage implements IReturn<PackageInfo> { /** @description The ID of the account */ // @ApiMember(Description="The ID of the account") public accountId: string; /** @description The IDs of the flows to export */ // @ApiMember(Description="The IDs of the flows to export") public flowIds: string[]; /** @description Include all custom fields */ // @ApiMember(Description="Include all custom fields") public includeAllCustomFields: boolean; public constructor(init?: Partial<ExportPackage>) { (Object as any).assign(this, init); } public getTypeName() { return 'ExportPackage'; } public getMethod() { return 'GET'; } public createResponse() { return new PackageInfo(); } }