import type { TimelineConfigInterface, TimelineMode } from '@cosmograph/ui'; export interface CosmographTimelineConfigInterface { /** * Timeline interpretation mode for Cosmograph wrapper. * If omitted (`undefined`), mode is auto-detected from data. */ mode?: TimelineMode | undefined; /** Data column key to access time values for the `CosmographTimeline`. Make sure it's included in `pointIncludeColumns` or `linkIncludeColumns` if you're not using this column as other point or link accessor. * * @default undefined */ accessor?: string; /** * Whether to use quantiles to compute the timeline extent (domain). * * When `true`, the visual extent is computed from the \(5^{th}\) and \(95^{th}\) percentiles, * effectively trimming extreme outliers from the visible range. * * Note that if the visual edge is selected, the selection will automatically expand * to include the full range of data (up to \(0^{th}\) or \(100^{th}\) percentile). * * If `customExtent` is provided and `useQuantiles` is `true`, the final extent * will be clamped to lie within `customExtent`. * * @default false */ useQuantiles?: boolean; /** Minimum and maximum extent for the `CosmographHistogram` visualization. Can be used if you don't want histogram range to be automatically calculated from data extent. * * @default undefined */ customExtent?: [number, number]; /** Defines type of filter to use. `true` for links, `false` for points. Can only be set once during initialization. * * @default false */ useLinksData?: boolean; /** Whether to highlight currently selected data on timeline. If `true`, can impact performance. * * @default true */ highlightSelectedData?: boolean; /** Callback for the range selection. Provides current selection of `CosmographTimeline`. * * @param {[number, number] | [Date, Date] | undefined} selection - The current selection range. If no selection is made, it will be `undefined`. * @param {boolean} [isManuallySelected] - Indicates whether the selection was made manually by the user. */ onSelection?: (selection: [number, number] | [Date, Date] | undefined, isManuallySelected?: boolean) => void; /** * Preserves the selection on unmount. * * @default false */ preserveSelectionOnUnmount?: boolean; /** * Custom ID for the filtering client. If not provided, uses constructor name. * Use this to maintain stable client connections across component remounts. * * @default undefined */ id?: string; /** * Initial selection to apply after data loads. * Useful for restoring saved filter state. * * @default undefined */ initialSelection?: [number, number] | [Date, Date]; } export declare const defaultCosmographTimelineConfig: CosmographTimelineConfig; export interface CosmographTimelineConfig extends CosmographTimelineConfigInterface, TimelineConfigInterface { }