import { Common } from './Common'; export declare namespace Contact { export interface Contact { ID: number; IsExcludedFromCampaigns: boolean; Name: string; CreatedAt: string; DeliveredCount: number; Email: string; ExclusionFromCampaignsUpdatedAt: string; IsOptInPending: boolean; IsSpamComplaining: boolean; LastActivityAt: string; LastUpdateAt: string; } export type PostContactBody = { Email: string; IsExcludedFromCampaigns?: boolean; Name?: string; }; export type PutContactBody = Omit; export type GetContactQueryParams = Partial & { Campaign?: number; ContactsList?: number; IsExcludedFromCampaigns?: boolean; }; type ContactResponse = { Count: number; Total: number; Data: Contact[]; }; export type PostContactResponse = ContactResponse; export type PutContactResponse = ContactResponse; export type GetContactResponse = ContactResponse; export {}; } export declare namespace ContactList { export interface ContactList { ID: number; IsDeleted: boolean; Name: string; Address: string; CreatedAt: string; SubscriberCount: number; } export type PostContactListBody = { Name: string; IsDeleted?: boolean; }; export type PutContactListBody = Partial; export type GetContactListQueryParams = Partial & { Address?: string; ExcludeID?: number; IsDeleted?: boolean; Name?: string; }; type ContactListResponse = Common.Response; export type PostContactListResponse = ContactListResponse; export type PutContactListResponse = ContactListResponse; export type GetContactListResponse = ContactListResponse; export {}; } export declare namespace BulkContactManagement { export enum ManageContactsAction { AddForce = "addforce", AddNoForce = "addnoforce", Remove = "remove", UnSub = "unsub" } export enum ImportListAction { AddForce = "addforce", AddNoForce = "addnoforce", UnSub = "unsub", DuplicateOverride = "duplicate-override", DuplicateNoOverride = "duplicate-no-override" } export enum ImportCSVMethod { AddForce = "addforce", AddNoForce = "addnoforce", Remove = "remove", UnSub = "unsub", ExcludeMarketing = "excludemarketing", IncludeMarketing = "includemarketing" } export enum CSVImportStatus { Upload = "Upload", Completed = "Completed", Abort = "Abort" } export enum JobStatus { Completed = "Completed", InProgress = "In Progress", Error = "Error" } export interface Job { JobID: number; } export interface CSVImport { ID: number; ErrTreshold: number; ImportOptions: string; Method: ImportCSVMethod; AliveAt: string; ContactsListID: number; Count: number; Current: number; DataID: number; Errcount: number; JobEnd: string; JobStart: string; RequestAt: string; Status: CSVImportStatus; } export interface ContactList { ListID: number; Action: ManageContactsAction; } export interface ContactManageManyContacts { ContactsLists: ContactList[]; Count: number; Error: string; ErrorFile: string; JobEnd: string; JobStart: string; Status: JobStatus; } export interface ContactsListImportList { JobID: number; Action: ImportListAction; ListID: number; } export type ContactBody = { Email: string; Name?: string; IsExcludedFromCampaigns?: boolean; Properties?: Properties; }; export type PostContactManageManyContactsBody = { Contacts: Array>; ContactsLists?: ContactList[]; }; export type PostContactsListImportListBody = { Action: ImportListAction; ListID: number; }; export type PostContactsListManageManyContactsBody = { Action: ManageContactsAction; Contacts: Array>; }; export type PostCSVImportBody = { ContactsListID: number; DataID: number; ErrTreshold?: number; ImportOptions?: string; Method?: ImportCSVMethod; }; export type PutCSVImportBody = Partial & { Status?: CSVImportStatus; }; export type GetCSVImportQueryParams = Partial; type JobResponse = Common.Response; type CSVImportResponse = Common.Response; type ContactManageManyContactsResponse = Common.Response; export type PostContactManageManyContactsResponse = JobResponse; export type GetContactManageManyContactsResponse = ContactManageManyContactsResponse; export type PostContactsListImportListResponse = JobResponse; export type GetContactsListImportListResponse = Common.Response; export type PostContactsListManageManyContactsResponse = JobResponse; export type GetContactsListManageManyContactsResponse = ContactManageManyContactsResponse; export type PostCSVImportResponse = CSVImportResponse; export type PutCSVImportResponse = CSVImportResponse; export type GetCSVImportResponse = CSVImportResponse; export {}; } export declare namespace ContactProperties { export enum DataType { Str = "str", Int = "int", Float = "float", Bool = "bool", DateTime = "datetime" } export enum NameSpace { Static = "static", Historic = "historic" } export interface ContactProperty { Name: string; Value: string; } export interface ContactData { ID: number; ContactID: number; Data: ContactProperty[]; } export interface ContactMetaData { ID: number; Datatype: DataType; Name: string; NameSpace: NameSpace; } export type PostContactMetaDataBody = { Name: string; Datatype?: DataType; NameSpace?: NameSpace; }; export type PutContactMetaDataBody = { Name?: string; Datatype?: DataType; }; export type GetContactMetaDataQueryParams = Partial & { DataType?: DataType; Namespace?: NameSpace; }; export type PutContactDataBody = { Data: ContactProperty[]; }; export type GetContactDataQueryParams = Partial & { Campaign?: number; ContactEmail?: string; ContactsList?: number; Fields?: string; LastActivityAt?: string; }; type ContactDataResponse = Common.Response; type ContactMetaDataResponse = Common.Response; export type PostContactMetaDataResponse = ContactMetaDataResponse; export type PutContactMetaDataResponse = ContactMetaDataResponse; export type GetContactMetaDataResponse = ContactMetaDataResponse; export type PutContactDataResponse = ContactDataResponse; export type GetContactDataResponse = ContactDataResponse; export {}; } export declare namespace ContactSubscription { export interface ManageContacts { Email: string; Action: BulkContactManagement.ManageContactsAction; Name: string; Properties: Properties; } export interface ListRecipient { ID: number; IsUnsubscribed: boolean; ContactID: number; ListID: number; ListName: string; SubscribedAt: string; UnsubscribedAt: string; } export interface ContactsList { ListID: number; IsUnsub: boolean; SubscribedAt: string; } export interface ContactsListSignup { ID: number; ConfirmAt: number; ConfirmIp: string; ContactID: number; Email: string; ListID: number; SignupAt: number; SignupIp: string; SignupKey: string; SourceId: number; Source: string; } export type PostContactManageContactsListsBody = { ContactsLists: BulkContactManagement.ContactList[]; }; export type PostContactsListManageContactBody = { Email: string; Action: BulkContactManagement.ManageContactsAction; Name?: string; Properties?: Properties; }; export type PostListRecipientBody = { IsUnsubscribed?: boolean; ContactID: number; ContactAlt?: string; ListID: number; ListAlt?: string; }; export type PutListRecipientBody = { IsUnsubscribed?: boolean; }; export type GetListRecipientQueryParams = Partial & { Blocked?: boolean; Contact?: number; ContactEmail?: string; ContactsList?: number; IgnoreDeleted?: boolean; IsExcludedFromCampaigns?: boolean; LastActivityAt?: string; ListName?: string; Opened?: boolean; Unsub?: boolean; }; export type GetContactsListSignupQueryParams = Partial & { Contact?: number; ContactsList?: number; Domain?: string; Email?: string; LocalPart?: string; MaxConfirmAt?: number; MinConfirmAt?: number; MaxSignupAt?: number; MinSignupAt?: number; SignupIp?: string; Source?: string; SourceID?: number; }; type ListRecipientResponse = Common.Response; export type PostContactManageContactsListsResponse = Common.Response>; export type PostContactsListManageContactResponse = Common.Response>>; export type PostListRecipientResponse = ListRecipientResponse; export type PutListRecipientResponse = ListRecipientResponse; export type GetListRecipientResponse = ListRecipientResponse; export type GetContactGetContactsListsResponse = Common.Response; export type GetContactsListSignupResponse = Common.Response; export {}; } export declare namespace ContactVerification { interface VerificationSummary { result: Result; risk: Risk; } interface ContactsListVerification { Akid: number; ContactListID: number; Count: number; Error: string; ID: number; JobEnd: string; JobStart: string; Method: string; ResponseURL: string; Status: string; Summary: VerificationSummary; } type GetContactsListVerifyResponse = Common.Response>>; }