@nolanrigo/cloudformation
Version:
TypeScript-based imperative way to define AWS CloudFormation templates
137 lines (136 loc) • 4.51 kB
TypeScript
import { ResourceBase } from "../../resource";
import { Value, List, MapOf } from "../../data-types";
export declare class EventDimensions {
Metrics?: MapOf<any>;
EventType?: SetDimension;
Attributes?: MapOf<any>;
constructor(properties: EventDimensions);
}
export declare class Message {
Body?: Value<string>;
ImageSmallIconUrl?: Value<string>;
JsonBody?: Value<string>;
MediaUrl?: Value<string>;
SilentPush?: Value<boolean>;
Url?: Value<string>;
RawContent?: Value<string>;
ImageUrl?: Value<string>;
TimeToLive?: Value<number>;
Action?: Value<string>;
Title?: Value<string>;
ImageIconUrl?: Value<string>;
constructor(properties: Message);
}
export declare class CampaignEmailMessage {
FromAddress?: Value<string>;
HtmlBody?: Value<string>;
Title?: Value<string>;
Body?: Value<string>;
constructor(properties: CampaignEmailMessage);
}
export declare class CampaignSmsMessage {
SenderId?: Value<string>;
Body?: Value<string>;
MessageType?: Value<string>;
constructor(properties: CampaignSmsMessage);
}
export declare class SetDimension {
DimensionType?: Value<string>;
Values?: List<Value<string>>;
constructor(properties: SetDimension);
}
export declare class WriteTreatmentResource {
TreatmentDescription?: Value<string>;
MessageConfiguration?: MessageConfiguration;
Schedule?: Schedule;
SizePercent?: Value<number>;
TreatmentName?: Value<string>;
constructor(properties: WriteTreatmentResource);
}
export declare class AttributeDimension {
AttributeType?: Value<string>;
Values?: List<Value<string>>;
constructor(properties: AttributeDimension);
}
export declare class MetricDimension {
ComparisonOperator?: Value<string>;
Value?: Value<number>;
constructor(properties: MetricDimension);
}
export declare class MessageConfiguration {
APNSMessage?: Message;
BaiduMessage?: Message;
DefaultMessage?: Message;
EmailMessage?: CampaignEmailMessage;
GCMMessage?: Message;
SMSMessage?: CampaignSmsMessage;
ADMMessage?: Message;
constructor(properties: MessageConfiguration);
}
export declare class CampaignHook {
Mode?: Value<string>;
WebUrl?: Value<string>;
LambdaFunctionName?: Value<string>;
constructor(properties: CampaignHook);
}
export declare class QuietTime {
Start: Value<string>;
End: Value<string>;
constructor(properties: QuietTime);
}
export declare class CampaignEventFilter {
FilterType?: Value<string>;
Dimensions?: EventDimensions;
constructor(properties: CampaignEventFilter);
}
export declare class Schedule {
TimeZone?: Value<string>;
QuietTime?: QuietTime;
EndTime?: Value<string>;
StartTime?: Value<string>;
Frequency?: Value<string>;
EventFilter?: CampaignEventFilter;
IsLocalTime?: Value<boolean>;
constructor(properties: Schedule);
}
export declare class Limits {
Daily?: Value<number>;
MaximumDuration?: Value<number>;
Total?: Value<number>;
MessagesPerSecond?: Value<number>;
constructor(properties: Limits);
}
export interface CampaignProperties {
AdditionalTreatments?: List<WriteTreatmentResource>;
TreatmentName?: Value<string>;
TreatmentDescription?: Value<string>;
SegmentVersion?: Value<number>;
ApplicationId: Value<string>;
Name: Value<string>;
SegmentId: Value<string>;
MessageConfiguration: MessageConfiguration;
CampaignHook?: CampaignHook;
HoldoutPercent?: Value<number>;
Schedule: Schedule;
Limits?: Limits;
IsPaused?: Value<boolean>;
Tags?: MapOf<any>;
Description?: Value<string>;
}
export default class Inner_Campaign extends ResourceBase<CampaignProperties> {
static EventDimensions: typeof EventDimensions;
static Message: typeof Message;
static CampaignEmailMessage: typeof CampaignEmailMessage;
static CampaignSmsMessage: typeof CampaignSmsMessage;
static SetDimension: typeof SetDimension;
static WriteTreatmentResource: typeof WriteTreatmentResource;
static AttributeDimension: typeof AttributeDimension;
static MetricDimension: typeof MetricDimension;
static MessageConfiguration: typeof MessageConfiguration;
static CampaignHook: typeof CampaignHook;
static QuietTime: typeof QuietTime;
static CampaignEventFilter: typeof CampaignEventFilter;
static Schedule: typeof Schedule;
static Limits: typeof Limits;
constructor(properties: CampaignProperties);
}