import { NumberT } from "./number"; import { Undefined } from "./undefined"; /** * A type predicate for the primitive boolean. * @param value - Any value * @returns `true` if the value is a primitive boolean. */ export declare function isBoolean(value: unknown): value is boolean; /** * A type predicate for the primitive string. * @param value - Any value * @returns `true` if the value is a primitive string. */ export declare function isString(value: unknown): value is string; /** * A type predicate for the primitive Symbol. * @param value - Any value * @returns `true` if the value is a symbol. */ export declare function isSymbol(value: unknown): value is symbol; /** * A type predicate for the Array object. * @param value - Any value * @returns `true` if the value is an array. */ export declare function isArray(value: unknown): value is unknown[]; /** * A type predicate for Object. * @param value - Any value * @returns `true` if the value is an object. */ export declare function isObject(value: unknown): value is object; /** * A type predicate for Function. * @param value - Any value * @returns `true` if the value is a function. */ export declare function isFunction(value: unknown): value is CallableFunction; /** * A type predicate for an object property key. * @param value - Any value * @returns `true` if the value is a string, number or symbol. */ export declare function isPropertyKey(value: unknown): value is PropertyKey; /** * A type predicate for a primitive number or the wrapped, Liquid number type. * @param value - Any value * @returns `true` if the value is a number or `NumberT`. */ export declare function isNumber(value: unknown): value is number | NumberT; /** * A type predicate for the number primitive. * @param value - Any value * @returns `true` if the value is a primitive number. */ export declare function isPrimitiveNumber(value: unknown): value is number; /** * A type predicate for a primitive number that is an integer. * @param value - Any value * @returns `true` if the value is a primitive number and is an integer. */ export declare function isPrimitiveInteger(value: unknown): value is number; export declare function isComparable(value: unknown): value is number | NumberT | string; /** * Stringify a value following Liquid semantics. * @param value - Any value * @returns A Liquid string representation of the value. */ export declare function liquidStringify(value: unknown): string; /** * A type predicate for the Iterable interface. * @param value - Any value * @returns `true` if the value is iterable. */ export declare function isIterable(value: unknown): value is Iterable; /** * A type predicate for `undefined` or Liquid's undefined wrapper. * @param value - Any value * @returns `true` if the value is `undefined` or a subclass of `Undefined`. */ export declare function isUndefined(value: unknown): value is Undefined; export type LiquidArrayLike = unknown[]; /** * A type predicate for objects that a considered array-like in Liquid. * @param value - Any value * @returns `true` if the value is considered array-like, `false` otherwise. */ export declare function isLiquidArrayLike(value: unknown): value is LiquidArrayLike; /** * A plain object with string indexes (not an array). */ export type ContextScope = { [index: string]: unknown; }; /** * A type predicate for the `ContextScope` type. * @param value - Any value * @returns `true` if the value is a non-array object. */ export declare function isContextScope(value: unknown): value is ContextScope;