//#region src/utils/strings.d.ts type Join = T extends [] ? "" : T extends [infer U extends string, ...infer Rest extends string[]] ? `${U}${Rest extends [any, ...any[]] ? `${Separator}${Join}` : ""}` : ""; declare function typedJoin(strings: T, separator: Separator): Join; declare function typedToLowercase(s: S): Lowercase; declare function typedToUppercase(s: S): Uppercase; declare function typedCapitalize(s: S): Capitalize; /** * Compares two strings in a way that is not dependent on the current locale. */ declare function stringCompare(a: string, b: string): number; /** * Returns all whitespace character at the start of the string. * * Uses the same definition for whitespace as `String.prototype.trim()`. */ declare function getWhitespacePrefix(s: string): string; /** * Returns all whitespace character at the end of the string. * * Uses the same definition for whitespace as `String.prototype.trim()`. */ declare function getWhitespaceSuffix(s: string): string; /** * Returns a string with all empty or whitespace-only lines at the start removed. * * Uses the same definition for whitespace as `String.prototype.trim()`. */ declare function trimEmptyLinesStart(s: string): string; /** * Returns a string with all empty or whitespace-only lines at the end removed. * * Uses the same definition for whitespace as `String.prototype.trim()`. */ declare function trimEmptyLinesEnd(s: string): string; /** * Returns a string with all empty or whitespace-only lines trimmed at the start and end. * * Uses the same definition for whitespace as `String.prototype.trim()`. */ declare function trimLines(s: string): string; /** * A template literal tag that returns the same string as the template literal without a tag. * * Useful for implementing your own template literal tags. */ declare function templateIdentity(strings: TemplateStringsArray | readonly string[], ...values: string[]): string; declare function deindent(code: string): string; declare function deindent(strings: TemplateStringsArray | readonly string[], ...values: any[]): string; declare function deindentTemplate(strings: TemplateStringsArray | readonly string[], ...values: any[]): [string[], ...string[]]; declare function extractScopes(scope: string, removeDuplicates?: boolean): string[]; declare function mergeScopeStrings(...scopes: string[]): string; declare function escapeTemplateLiteral(s: string): string; type Nicifiable = { getNicifiableKeys?(): PropertyKey[]; getNicifiedObjectExtraLines?(): string[]; }; type NicifyOptions = { maxDepth: number; currentIndent: string; lineIndent: string; multiline: boolean; refs: Map; path: string; parent: null | { options: NicifyOptions; value: unknown; }; keyInParent: PropertyKey | null; hideFields: PropertyKey[]; overrides: (...args: Parameters) => string | null; }; declare function nicify(value: unknown, options?: Partial): string; declare function replaceAll(input: string, searchValue: string, replaceValue: string): string; //#endregion export { Join, Nicifiable, NicifyOptions, deindent, deindentTemplate, escapeTemplateLiteral, extractScopes, getWhitespacePrefix, getWhitespaceSuffix, mergeScopeStrings, nicify, replaceAll, stringCompare, templateIdentity, trimEmptyLinesEnd, trimEmptyLinesStart, trimLines, typedCapitalize, typedJoin, typedToLowercase, typedToUppercase }; //# sourceMappingURL=strings.d.ts.map