import type { Filter } from './Filter.js'; import type { TransformedToken } from './DesignToken.js'; import type { PlatformConfig, Config } from './Config.js'; import type { Volume } from './Volume.js'; import { transformTypes } from '../lib/enums/index.js'; interface BaseTransform { name: string; type: Type; filter?: Filter['filter']; transitive?: boolean; transform: (token: TransformedToken, config: PlatformConfig, options: Config, vol?: Volume) => Promise | Value; } export type NameTransform = BaseTransform; export type AttributeTransform = BaseTransform>; export type ValueTransform = BaseTransform; export type Transform = NameTransform | AttributeTransform | ValueTransform; export {};