/** * Adds a new segments preset to the recently used in the current environment scope. * * @param {FilterSegment[]} segments List of segments to create a new preset. * @returns {UserSegmentsPresets} User created segments presets in the current environment. */ export declare function addRecentSegmentsPreset(segments: FilterSegment[]): Promise; /** @ignore */ export declare interface DtRuntimeSegments { addRecentSegmentsPreset(segments: FilterSegment[]): Promise; getSegmentsPresets(): Promise; pinSegmentsPreset(segments: FilterSegment[]): Promise; unpinSegmentsPreset(id: string): Promise; reorderPinnedSegmentsPreset(id: string, index: number): Promise; getSegmentVariables(segmentId: string): Promise; } /** * Configuration of a single segment. * * The segment is identified by ID. The configuration may include a set of variables. */ export declare interface FilterSegment { id: string; variables?: FilterSegmentVariableDefinition[]; } /** @ignore */ declare interface FilterSegmentVariableDefinition { name: string; values: string[]; } /** * Retrieves user created segments presets. * * @returns {UserSegmentsPresets} User created segments presets in the current environment. */ export declare function getSegmentsPresets(): Promise; /** * Retrieves variables for a segment. * * @returns {SegmentVariablesResponse} Variables for the given segment, or a fallback when the runtime is unavailable. */ export declare function getSegmentVariables(segmentId: string): Promise; /** * Pins a new segments preset in the current app scope. * * @param {FilterSegment[]} segments List of segments to create a new preset. * @returns {UserSegmentsPresets} User created segments presets in the current environment. */ export declare function pinSegmentsPreset(segments: FilterSegment[]): Promise; /** * Reorder the segments presets in the current app scope. * * @param {string} id ID of the segments preset to reorder. * @param {number} index New index of the segments preset after reordering. * @returns {UserSegmentsPresets} User created segments presets in the current environment. */ export declare function reorderPinnedSegmentsPreset(id: string, index: number): Promise; /** * Preset containing a configuration of one or more segments. * * The preset is identified by ID that's not stable in the long term. * It means, consumers can't rely on it to identify presets created during previous sessions. */ export declare interface SegmentsPreset { id: string; segments: FilterSegment[]; } export declare type SegmentVariablesError = { code: number; message: string; }; export declare type SegmentVariablesResponse = { accessible: true; variables: SegmentVariablesResult; } | { accessible: boolean; error: SegmentVariablesError; }; export declare type SegmentVariablesResult = Record[]; /** * Unpins the segments preset in the current app scope. * * @param {string} id ID of the segments preset to unpin. * @returns {UserSegmentsPresets} User created segments presets in the current environment. */ export declare function unpinSegmentsPreset(id: string): Promise; /** * Collection of user segments presets. * * It contains recently used and pinned segments presets. */ export declare interface UserSegmentsPresets { recentPresets: SegmentsPreset[]; pinnedPresets: SegmentsPreset[]; } export { }