33 lines
704 B
TypeScript
33 lines
704 B
TypeScript
/* eslint-disable no-redeclare */
|
|
|
|
export type UrlSlugTransformer = (
|
|
slugFragments: string[],
|
|
separator: UrlSlugSeparator
|
|
) => string;
|
|
|
|
export type UrlSlugSeparator = '-'|'.'|'_'|'~'|'';
|
|
|
|
export interface UrlSlugOptions {
|
|
camelCase?: boolean = true;
|
|
separator?: UrlSlugSeparator = '-';
|
|
transformer: false|UrlSlugTransformer = false;
|
|
}
|
|
|
|
declare function urlSlug(
|
|
string: string,
|
|
options?: urlSlug.Options): string;
|
|
|
|
export default urlSlug;
|
|
|
|
export as namespace urlSlug;
|
|
|
|
declare namespace urlSlug {
|
|
type Options = UrlSlugOptions;
|
|
|
|
static function revert(slug: string, options?: urlSlug.Options);
|
|
|
|
declare namespace transformers {
|
|
static const lowercase: UrlSlugTransformer;
|
|
}
|
|
}
|