import * as z from "zod/v3";
import { EmailChannelOverrides, EmailChannelOverrides$Outbound } from "./emailchanneloverrides.js";
import { SeverityLevelEnum } from "./severitylevelenum.js";
import { StepsOverrides, StepsOverrides$Outbound } from "./stepsoverrides.js";
import { SubscriberPayloadDto, SubscriberPayloadDto$Outbound } from "./subscriberpayloaddto.js";
import { TenantPayloadDto, TenantPayloadDto$Outbound } from "./tenantpayloaddto.js";
/**
* Channel-specific overrides that apply to all steps of a particular channel type. Step-level overrides take precedence over channel-level overrides.
*/
export type TriggerEventToAllRequestDtoChannels = {
/**
* Email channel specific overrides
*/
email?: EmailChannelOverrides | undefined;
};
/**
* This could be used to override provider specific configurations
*/
export type TriggerEventToAllRequestDtoOverrides = {
/**
* This could be used to override provider specific configurations or layout at the step level
*/
steps?: {
[k: string]: StepsOverrides;
} | undefined;
/**
* Channel-specific overrides that apply to all steps of a particular channel type. Step-level overrides take precedence over channel-level overrides.
*/
channels?: TriggerEventToAllRequestDtoChannels | undefined;
/**
* Overrides the provider configuration for the entire workflow and all steps
*/
providers?: {
[k: string]: {
[k: string]: any;
};
} | undefined;
/**
* Override the email provider specific configurations for the entire workflow
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
email?: {
[k: string]: any;
} | undefined;
/**
* Override the push provider specific configurations for the entire workflow
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
push?: {
[k: string]: any;
} | undefined;
/**
* Override the sms provider specific configurations for the entire workflow
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
sms?: {
[k: string]: any;
} | undefined;
/**
* Override the chat provider specific configurations for the entire workflow
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
chat?: {
[k: string]: any;
} | undefined;
/**
* Override the layout identifier for the entire workflow
*
* @deprecated field: This will be removed in a future release, please migrate away from it as soon as possible.
*/
layoutIdentifier?: string | undefined;
/**
* Severity of the workflow
*/
severity?: SeverityLevelEnum | undefined;
additionalProperties?: {
[k: string]: {
[k: string]: any;
};
} | undefined;
};
/**
* It is used to display the Avatar of the provided actor's subscriber id or actor object.
*
* @remarks
* If a new actor object is provided, we will create a new subscriber in our system
*/
export type TriggerEventToAllRequestDtoActor = SubscriberPayloadDto | string;
/**
* It is used to specify a tenant context during trigger event.
*
* @remarks
* If a new tenant object is provided, we will create a new tenant.
*/
export type TriggerEventToAllRequestDtoTenant = string | TenantPayloadDto;
/**
* Rich context object with id and optional data
*/
export type TriggerEventToAllRequestDtoContext2 = {
id: string;
/**
* Optional additional context data
*/
data?: {
[k: string]: any;
} | undefined;
};
export type TriggerEventToAllRequestDtoContext = TriggerEventToAllRequestDtoContext2 | string;
export type TriggerEventToAllRequestDto = {
/**
* The trigger identifier associated for the template you wish to send. This identifier can be found on the template page.
*/
name: string;
/**
* The payload object is used to pass additional information that
*
* @remarks
* could be used to render the template, or perform routing rules based on it.
* For In-App channel, payload data are also available in
*/
payload: {
[k: string]: any;
};
/**
* This could be used to override provider specific configurations
*/
overrides?: TriggerEventToAllRequestDtoOverrides | undefined;
/**
* A unique identifier for this transaction, we will generated a UUID if not provided.
*/
transactionId?: string | undefined;
/**
* It is used to display the Avatar of the provided actor's subscriber id or actor object.
*
* @remarks
* If a new actor object is provided, we will create a new subscriber in our system
*/
actor?: SubscriberPayloadDto | string | undefined;
/**
* It is used to specify a tenant context during trigger event.
*
* @remarks
* If a new tenant object is provided, we will create a new tenant.
*/
tenant?: string | TenantPayloadDto | undefined;
context?: {
[k: string]: TriggerEventToAllRequestDtoContext2 | string;
} | undefined;
};
/** @internal */
export type TriggerEventToAllRequestDtoChannels$Outbound = {
email?: EmailChannelOverrides$Outbound | undefined;
};
/** @internal */
export declare const TriggerEventToAllRequestDtoChannels$outboundSchema: z.ZodType;
export declare function triggerEventToAllRequestDtoChannelsToJSON(triggerEventToAllRequestDtoChannels: TriggerEventToAllRequestDtoChannels): string;
/** @internal */
export type TriggerEventToAllRequestDtoOverrides$Outbound = {
steps?: {
[k: string]: StepsOverrides$Outbound;
} | undefined;
channels?: TriggerEventToAllRequestDtoChannels$Outbound | undefined;
providers?: {
[k: string]: {
[k: string]: any;
};
} | undefined;
email?: {
[k: string]: any;
} | undefined;
push?: {
[k: string]: any;
} | undefined;
sms?: {
[k: string]: any;
} | undefined;
chat?: {
[k: string]: any;
} | undefined;
layoutIdentifier?: string | undefined;
severity?: string | undefined;
[additionalProperties: string]: unknown;
};
/** @internal */
export declare const TriggerEventToAllRequestDtoOverrides$outboundSchema: z.ZodType;
export declare function triggerEventToAllRequestDtoOverridesToJSON(triggerEventToAllRequestDtoOverrides: TriggerEventToAllRequestDtoOverrides): string;
/** @internal */
export type TriggerEventToAllRequestDtoActor$Outbound = SubscriberPayloadDto$Outbound | string;
/** @internal */
export declare const TriggerEventToAllRequestDtoActor$outboundSchema: z.ZodType;
export declare function triggerEventToAllRequestDtoActorToJSON(triggerEventToAllRequestDtoActor: TriggerEventToAllRequestDtoActor): string;
/** @internal */
export type TriggerEventToAllRequestDtoTenant$Outbound = string | TenantPayloadDto$Outbound;
/** @internal */
export declare const TriggerEventToAllRequestDtoTenant$outboundSchema: z.ZodType;
export declare function triggerEventToAllRequestDtoTenantToJSON(triggerEventToAllRequestDtoTenant: TriggerEventToAllRequestDtoTenant): string;
/** @internal */
export type TriggerEventToAllRequestDtoContext2$Outbound = {
id: string;
data?: {
[k: string]: any;
} | undefined;
};
/** @internal */
export declare const TriggerEventToAllRequestDtoContext2$outboundSchema: z.ZodType;
export declare function triggerEventToAllRequestDtoContext2ToJSON(triggerEventToAllRequestDtoContext2: TriggerEventToAllRequestDtoContext2): string;
/** @internal */
export type TriggerEventToAllRequestDtoContext$Outbound = TriggerEventToAllRequestDtoContext2$Outbound | string;
/** @internal */
export declare const TriggerEventToAllRequestDtoContext$outboundSchema: z.ZodType;
export declare function triggerEventToAllRequestDtoContextToJSON(triggerEventToAllRequestDtoContext: TriggerEventToAllRequestDtoContext): string;
/** @internal */
export type TriggerEventToAllRequestDto$Outbound = {
name: string;
payload: {
[k: string]: any;
};
overrides?: TriggerEventToAllRequestDtoOverrides$Outbound | undefined;
transactionId?: string | undefined;
actor?: SubscriberPayloadDto$Outbound | string | undefined;
tenant?: string | TenantPayloadDto$Outbound | undefined;
context?: {
[k: string]: TriggerEventToAllRequestDtoContext2$Outbound | string;
} | undefined;
};
/** @internal */
export declare const TriggerEventToAllRequestDto$outboundSchema: z.ZodType;
export declare function triggerEventToAllRequestDtoToJSON(triggerEventToAllRequestDto: TriggerEventToAllRequestDto): string;
//# sourceMappingURL=triggereventtoallrequestdto.d.ts.map