next-intl
Version:
Internationalization (i18n) for Next.js
26 lines (25 loc) • 1.62 kB
TypeScript
import type { LoaderContext } from 'webpack';
import type { ExtractorConfigInput } from '../extractor/types.js';
export type PluginConfig = {
requestConfig?: string;
experimental?: {
/** A path to the messages file that you'd like to create a declaration for. In case you want to consider multiple files, you can pass an array of paths. */
createMessagesDeclaration?: string | Array<string>;
/**
* Relative path(s) to your source code files.
*/
srcPath?: string | Array<string>;
/** Configuration about your catalogs of messages */
messages?: ExtractorConfigInput['messages'] & {
/**
* When enabled, ICU messages are precompiled at build time, resulting in smaller bundles and faster message formatting.
*/
precompile?: boolean;
};
/**
* Enables the usage of [`useExtracted`](/docs/usage/extraction).
*/
extract?: ExtractorConfigInput['extract'];
};
};
export type TurbopackLoaderContext<Options> = Pick<LoaderContext<Options>, 'rootContext' | 'sourceMap' | 'getOptions' | 'getResolve' | 'emitWarning' | 'emitError' | 'getLogger' | 'context' | 'loaderIndex' | 'loaders' | 'resourcePath' | 'resourceQuery' | 'resourceFragment' | 'async' | 'callback' | 'cacheable' | 'addDependency' | 'dependency' | 'addContextDependency' | 'addMissingDependency' | 'getDependencies' | 'getContextDependencies' | 'getMissingDependencies' | 'clearDependencies' | 'resource' | 'request' | 'remainingRequest' | 'currentRequest' | 'previousRequest' | 'query' | 'data'>;