/** * AdvancedFilter用の値定義ヘルパー * * アプリケーション固有の値は外部から提供されるため、 * 汎用的なヘルパー関数のみを提供する。 */ import type { IconName } from "../../Icon"; export type ValueDefinition = { value: string; label: string; /** 選択肢の左に表示するアイコン名 */ icon?: IconName; /** アイコンの種類 */ iconType?: "line" | "fill"; /** アイコンの色(hex や theme の palette 値など) */ iconColor?: string; }; /** * カスタム値作成用のヘルパー関数 */ export declare const createValue: (value: string, label: string) => ValueDefinition; /** * 値配列を結合するヘルパー関数 */ export declare const combineValues: (...valueGroups: ValueDefinition[][]) => ValueDefinition[]; /** * 値配列のラベルを上書きするヘルパー関数 */ export declare const overrideValueLabels: (values: ValueDefinition[], labelOverrides: Record) => ValueDefinition[]; /** * 単一値のラベルのみを変更するヘルパー関数 */ export declare const changeValueLabel: (value: ValueDefinition, newLabel: string) => ValueDefinition; /** * 値配列から指定されたvalueの要素のみを抽出 */ export declare const selectValues: (values: ValueDefinition[], valueStrings: string[]) => ValueDefinition[]; /** * 値配列から指定されたインデックスの要素のみを抽出 */ export declare const selectValuesByIndex: (values: ValueDefinition[], indices: number[]) => ValueDefinition[]; /** * 値配列を値の文字列配列に変換 */ export declare const getValueStrings: (values: ValueDefinition[]) => string[]; /** * 値配列をラベルの文字列配列に変換 */ export declare const getValueLabels: (values: ValueDefinition[]) => string[]; /** * 値の文字列配列から対応するラベル配列を取得 */ export declare const getLabelsForValues: (values: ValueDefinition[], valueStrings: string[]) => string[]; /** * 値配列を重複なしで結合 */ export declare const mergeValues: (...valueGroups: ValueDefinition[][]) => ValueDefinition[]; /** * 値配列をソート */ export declare const sortValues: (values: ValueDefinition[], sortBy?: "value" | "label") => ValueDefinition[];