import { SoapService, AdwordsOperartionService } from '../../core'; import { ISelector, IPaging } from '../../../types/adwords'; import { IAdGroupAdReturnValue } from './AdGroupAdReturnValue'; import { IAdGroupAdOperation } from './AdGroupAdOperation'; import { IAdGroupAdPage } from './AdGroupAdPage'; import { IAdGroupAd } from './AdGroupAd'; import { IExpandedTextAd, IResponsiveDisplayAd } from './Ad'; interface IAdGroupAdServiceOpts { soapService: SoapService; } declare class AdGroupAdService extends AdwordsOperartionService { static isExpandedTextAd(ad: Partial): ad is IExpandedTextAd; static isResponsiveDisplayAd(ad: Partial): ad is IResponsiveDisplayAd; static setType(operand: IAdGroupAd): IAdGroupAd; /** * https://developers.google.com/adwords/api/docs/appendix/selectorfields#v201809-AdGroupAdService * * @private * @static * @memberof AdGroupAdService */ private static readonly selectorFields; private soapService; constructor(options: IAdGroupAdServiceOpts); getAll(): Promise; getAllMultiAssetResponsiveDisplayAd(): Promise; getAllExpandedTextAd(paging?: IPaging): Promise; getByAdGroupIds(adGroupIds: string[]): Promise; /** * add ad group ad. * * 当调用 mutate() 时,最好每个请求发送多个操作;避免发送多个请求,而每个请求仅包含一个操作。每个请求发送多个操作可减少到服务器的往返次数,并提高应用性能。 * * @author dulin * @param {IAdGroupAd[]} adGroupAds * @returns * @memberof AdGroupAdService */ add(adGroupAds: IAdGroupAd[]): Promise; update(adGroupAds: IAdGroupAd[]): Promise; protected get(serviceSelector: ServiceSelector): Promise; protected mutate(operations: Operation[]): Promise; } export { AdGroupAdService }; export * from './Ad'; export * from './AdGroupAd'; export * from './AdGroupAdOperation'; export * from './AdGroupAdPage'; export * from './AdGroupAdPolicySummary'; export * from './AdGroupAdReturnValue'; export * from './CustomParameter'; export * from './CustomParameters'; export * from './Dimensions'; export * from './DynamicSettings'; export * from './ExemptionRequest'; export * from './Label'; export * from './LabelAttribute'; export * from './Media'; export * from './Media_Size_DimensionsMapEntry'; export * from './Media_Size_StringMapEntry'; export * from './PolicyViolationKey'; export * from './UrlData'; export * from './UrlList'; export * from './enum/Ad'; export * from './enum/AdGroupAd'; export * from './enum/DisplayAdFormatSetting'; export * from './enum/Media'; export * from './enum/SystemManagedEntitySource';