export type LinkedInCampaignStatus = "ACTIVE" | "PAUSED" | "ARCHIVED" | "COMPLETED" | "CANCELED" | "DRAFT" | "PENDING_DELETION" | "REMOVED"; export type LinkedInCampaignType = "TEXT_AD" | "SPONSORED_UPDATES" | "SPONSORED_INMAILS" | "DYNAMIC" | "SPONSORED_UPDATES_CAROUSEL" | "VIDEO" | "CONVERSATION" | "THOUGHT_LEADER_ADS" | "NORMALIZED_DISPLAY_AD"; export type LinkedInCampaignObjectiveType = "AWARENESS" | "BRAND_AWARENESS" | "ENGAGEMENT" | "JOB_APPLICANTS" | "LEAD_GENERATION" | "VIDEO_VIEWS" | "WEBSITE_CONVERSIONS" | "WEBSITE_VISITS" | "TALENT_LEADS"; export type LinkedInOptimizationTargetType = "ENHANCED_CONVERSION" | "NONE" | "MAX_CLICK" | "MAX_IMPRESSION" | "MAX_CONVERSION" | "MAX_VIDEO_VIEW" | "TARGET_COST_PER_CLICK" | "TARGET_COST_PER_IMPRESSION" | "TARGET_COST_PER_VIDEO_VIEW"; export type LinkedInCreativeStatus = "ACTIVE" | "PAUSED" | "ARCHIVED" | "COMPLETED" | "CANCELED" | "DRAFT" | "PENDING_DELETION" | "REMOVED"; export type LinkedInUrn = string; export interface LinkedInAuditStamp { actor: LinkedInUrn; time: number; } export interface LinkedInAdAccount { id: number; name: string; status: "ACTIVE" | "INACTIVE" | "CLOSED"; currency: string; type: "BUSINESS" | "ENTERPRISE"; test: boolean; created?: LinkedInAuditStamp; lastModified?: LinkedInAuditStamp; } export interface LinkedInCampaignGroup { id: number; name: string; status: LinkedInCampaignStatus; account: LinkedInUrn; created?: LinkedInAuditStamp; lastModified?: LinkedInAuditStamp; } export interface LinkedInAmount { amount: string; currencyCode: string; } export interface LinkedInSchedule { start: number; end?: number; } export interface LinkedInLocale { country: string; language: string; } export interface LinkedInTargetingFacets { locations?: LinkedInUrn[]; seniorities?: LinkedInUrn[]; jobFunctions?: LinkedInUrn[]; titles?: LinkedInUrn[]; skills?: LinkedInUrn[]; companies?: LinkedInUrn[]; industries?: LinkedInUrn[]; } export interface LinkedInTargeting { includedTargetingFacets?: LinkedInTargetingFacets; excludedTargetingFacets?: LinkedInTargetingFacets; } export interface LinkedInCampaign { id: number; name: string; status: LinkedInCampaignStatus; type: LinkedInCampaignType; campaignGroup: LinkedInUrn; account: LinkedInUrn; objectiveType?: LinkedInCampaignObjectiveType; optimizationTargetType?: LinkedInOptimizationTargetType; unitCost?: LinkedInAmount; dailyBudget?: LinkedInAmount; totalBudget?: LinkedInAmount; runSchedule?: LinkedInSchedule; targeting?: LinkedInTargeting; locale?: LinkedInLocale; format?: string; created?: LinkedInAuditStamp; lastModified?: LinkedInAuditStamp; } export interface LinkedInCreativeVariables { data: Record; } export interface LinkedInCreative { id: number; status: LinkedInCreativeStatus; campaign: LinkedInUrn; reference?: LinkedInUrn; type?: string; variables?: LinkedInCreativeVariables; created?: LinkedInAuditStamp; lastModified?: LinkedInAuditStamp; } export interface LinkedInConversionRule { id: number; name: string; account: LinkedInUrn; type: string; enabled: boolean; postClickAttributionWindowSize?: number; viewThroughAttributionWindowSize?: number; created?: LinkedInAuditStamp; lastModified?: LinkedInAuditStamp; } export interface LinkedInDate { day: number; month: number; year: number; } export interface LinkedInDateRange { start: LinkedInDate; end: LinkedInDate; } export interface LinkedInAnalyticsElement { dateRange?: LinkedInDateRange; impressions?: number; clicks?: number; totalEngagements?: number; videoViews?: number; opens?: number; reactions?: number; follows?: number; companyPageClicks?: number; pivot?: string; pivotValue?: LinkedInUrn; pivotValues?: LinkedInUrn[]; costInLocalCurrency?: string; approximateUniqueImpressions?: number; } export interface LinkedInAnalyticsResponse { elements: LinkedInAnalyticsElement[]; paging?: LinkedInPaging; } export interface LinkedInPaging { start: number; count: number; total?: number; } export interface LinkedInElementsResponse { elements: T[]; paging?: LinkedInPaging; } export interface CreateLinkedInCampaignGroupRequest { account: LinkedInUrn; name: string; status?: LinkedInCampaignStatus; } export interface CreateLinkedInCampaignRequest { name: string; account: LinkedInUrn; campaignGroup: LinkedInUrn; type: LinkedInCampaignType; objectiveType?: LinkedInCampaignObjectiveType; status?: LinkedInCampaignStatus; dailyBudget?: LinkedInAmount; totalBudget?: LinkedInAmount; unitCost?: LinkedInAmount; targeting?: LinkedInTargeting; runSchedule?: LinkedInSchedule; locale?: LinkedInLocale; } export interface CreateLinkedInCreativeRequest { campaign: LinkedInUrn; reference?: LinkedInUrn; status?: LinkedInCreativeStatus; type?: string; variables?: LinkedInCreativeVariables; } export declare function isLinkedInCampaign(value: unknown): value is LinkedInCampaign; export declare function isLinkedInCampaignGroup(value: unknown): value is LinkedInCampaignGroup; export declare function isLinkedInCreative(value: unknown): value is LinkedInCreative; export declare function isLinkedInAdAccount(value: unknown): value is LinkedInAdAccount; export declare function isLinkedInConversionRule(value: unknown): value is LinkedInConversionRule; //# sourceMappingURL=types.d.ts.map