import type { LayerWorkerFunction, NotNullOrObject, Property, ValueType } from './style.spec.js';
/** Callback for various conditions */
export type Callback<T extends NotNullOrObject, U> = (i: T) => U;
/**
 * This functionality is built for the tile worker. It helps with building data the GPU can parse
 * to manipulate input values into output values on the GPU.
 * @param input - input value or property
 * @param cb - callback function
 * @returns a generic layer worker function
 */
export default function parseFeature<T extends NotNullOrObject, U = T>(input: ValueType<T> | Property<ValueType<T>>, cb?: Callback<T, U>): LayerWorkerFunction<U>;
