import type { IDataObject, IExecuteFunctions, IHookFunctions, ILoadOptionsFunctions, IWebhookFunctions } from 'n8n-workflow'; import type { ILeanplumResponseItem } from '../types/LeanplumTypes'; /** * Make a single action request to the Leanplum API */ export declare function leanplumRequest(this: IExecuteFunctions | ILoadOptionsFunctions | IHookFunctions | IWebhookFunctions, action: string, body?: IDataObject, useExportKey?: boolean): Promise; /** * Make a multi-action request to the Leanplum API */ export declare function leanplumMultiRequest(this: IExecuteFunctions, actions: Array<{ action: string; [key: string]: unknown; }>): Promise; /** * Make a request specifically for data export operations */ export declare function leanplumExportRequest(this: IExecuteFunctions, action: string, body?: IDataObject): Promise; /** * Get all items with pagination support */ export declare function leanplumRequestAllItems(this: IExecuteFunctions, action: string, body?: IDataObject, limitOrItemsKey?: number | string, maybeLimit?: number): Promise; /** * Poll for export job completion */ export declare function pollExportJob(this: IExecuteFunctions, jobId: string, maxAttempts?: number, pollInterval?: number): Promise; /** * Build user attributes object from input */ export declare function buildUserAttributes(additionalFields: IDataObject): IDataObject; /** * Build event parameters object from input */ export declare function buildEventParams(additionalFields: IDataObject): IDataObject; /** * Parse JSON safely */ export declare function parseJson(value: string | IDataObject): IDataObject; /** * Convert timestamp to Unix seconds */ export declare function toUnixTimestamp(dateInput: string | number | Date): number; /** * Format filters for segment creation */ export declare function buildSegmentFilters(filters: IDataObject): IDataObject[]; /** * Build A/B test variants array */ export declare function buildAbTestVariants(variants: IDataObject): IDataObject[]; /** * Validate push notification options */ export declare function buildPushOptions(additionalFields: IDataObject): IDataObject; //# sourceMappingURL=GenericFunctions.d.ts.map