/**
 * Creates a function that can be used to format a property. This can be useful
 * to use as the function on `dictionary.allTokens.map`. The formatting
 * is configurable either by supplying a `format` option or a `formatting` object
 * which uses: prefix, indentation, separator, suffix, and commentStyle.
 * @memberof module:formatHelpers
 * @name createPropertyFormatter
 * @example
 * ```javascript
 * StyleDictionary.registerFormat({
 *   name: 'myCustomFormat',
 *   formatter: function({ dictionary, options }) {
 *     const { outputReferences } = options;
 *     const formatProperty = createPropertyFormatter({
 *       outputReferences,
 *       dictionary,
 *       format: 'css'
 *     });
 *     return dictionary.allTokens.map(formatProperty).join('\n');
 *   }
 * });
 * ```
 * @param {Object} options
 * @param {boolean} [options.outputReferences] - Whether or not to output references. You will want to pass this from the `options` object sent to the formatter function.
 * @param {boolean} [options.outputReferenceFallbacks] - Whether or not to output css variable fallback values when using output references. You will want to pass this from the `options` object sent to the formatter function.
 * @param {Dictionary} options.dictionary - The dictionary object sent to the formatter function
 * @param {string} [options.format] - Available formats are: 'css', 'sass', 'less', and 'stylus'. If you want to customize the format and can't use one of those predefined formats, use the `formatting` option
 * @param {Formatting} [options.formatting] - Custom formatting properties that define parts of a declaration line in code. The configurable strings are: prefix, indentation, separator, suffix, and commentStyle. Those are used to generate a line like this: `${indentation}${prefix}${prop.name}${separator} ${prop.value}${suffix}`
 * @param {boolean} [options.themeable] [false] - Whether tokens should default to being themeable.
 * @returns {(prop: import('../../../types/DesignToken.d.ts').TransformedToken) => string}
 */
export default function createPropertyFormatter({ outputReferences, outputReferenceFallbacks, dictionary, format, formatting, themeable, }: {
    outputReferences?: boolean | undefined;
    outputReferenceFallbacks?: boolean | undefined;
    dictionary: Dictionary;
    format?: string | undefined;
    formatting?: import("../../../types/File.d.ts").FormattingOptions | undefined;
    themeable?: boolean | undefined;
}): (prop: import('../../../types/DesignToken.d.ts').TransformedToken) => string;
export type Dictionary = import('../../../types/DesignToken.d.ts').Dictionary;
export type Formatting = import('../../../types/File.d.ts').FormattingOptions;
