import type { HubspotFieldResponse, HubspotFormDefinition } from '../types'; /** sessionStorage key for first-touch marketing params (cross-page form attribution). */ export declare const MARKETING_PARAMS_STORAGE_KEY = "se_studio_marketing_params"; /** * Standard marketing query keys to capture even when no matching form field exists yet. * OM1 contact/demo/webinar forms use the five `utm_*` contact properties. */ export declare const KNOWN_MARKETING_PARAM_KEYS: readonly ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'gclid', 'fbclid', 'msclkid']; /** * Read current URL marketing params and merge first-touch into sessionStorage * (existing session keys are not overwritten). * * Safe to call on every page load so multi-page journeys retain UTMs when the * form page has no query string. */ export declare function captureMarketingParams(): Record; /** * Marketing params for form fill: first-touch session, then current URL * (URL wins for keys present on this page — last-touch on the form URL). */ export declare function getMarketingParams(): Record; /** * Fill empty hidden form fields from marketing params (URL + session). * Does not overwrite existing non-empty values (definition defaults or prior fills). * Preserves each field's `objectTypeId` from the form definition. */ export declare function applyMarketingParamsToHiddenFields(formDefinition: HubspotFormDefinition, defaults: Record, marketingParams?: Record): Record; //# sourceMappingURL=marketingParams.d.ts.map