Skip to content

createInterpolation ​

The createInterpolation() function generates a typed templating function: the {id} placeholders of the string are required at runtime and checked at compile time. In strict mode, an error is thrown if an id is missing.

Interactive example ​

Syntax ​

typescript
function createInterpolation<
	GenericInput extends string,
	GenericInterpolationId extends ExtractInterpolationId<GenericInput>,
	GenericStrict extends boolean
>(
	input: GenericInput,
	strict?: GenericStrict
): <
	GenericInterpolationMapperValue extends string,
	GenericInterpolationValues extends Record<GenericInterpolationId, GenericInterpolationMapperValue>
>(
	...[interpolationValues]: IsEqual<GenericInterpolationId, never> extends true
		? []
		: [interpolationValues: GenericInterpolationValues]
) => IsEqual<GenericStrict, true> extends true
	? ReplaceInterpolationIdByValues<GenericInput, GenericInterpolationValues>
	: string;

Parameters ​

  • input : Template string containing {id} placeholders.
  • strict : Boolean (optional). If true, all ids must be provided or an error is thrown.

Return value ​

A typed interpolation function that requires a values object for each id present in the template and returns the interpolated string (or string in non-strict mode).

See also ​

Released under the MIT license.