import { TokenMode, ResponsiveType, ManagedResponsiveScopeInput, ManagedResponsiveScopeOutput, StateVariantType, CssStatesType, ManagedStateScopeInput } from '../types/ui.type';
import { Nullable } from '../types/general';
/**
 * If the token is a valid spacing token, return the CSS class string. Otherwise, log an error message
 *
 * @param {unknown} token - The value that was passed into the function.
 * @returns {Nullable<string>} The the CSS class string of the padding token.
 */
export declare function formatAndValidPadding(token: unknown): Nullable<string>;
/**
 * The function `formatAndValidBorderStyle` formats a border style token and returns a string if it is
 * a valid border style type, otherwise it logs an invalid value message.
 *
 * @param {unknown} token - The `token` parameter is a value that represents a border style type.
 * @returns {Nullable<string>} The function `formatAndValidBorderStyle` returns a string that is formatted as
 * `v-border-` if the `token` parameter is of a valid border style type. If the `token` is not
 * a valid border style type, it logs an invalid value message and does not return anything (implicitly
 * returns `undefined`).
 */
export declare function formatAndValidBorderStyle(token: unknown): Nullable<string>;
/**
 * If the token is a valid border radius, return a string with the token prefixed with `v-rounded-`. Otherwise, log an
 * error message
 *
 * @param {unknown} token - The value passed in by the user.
 * @returns {Nullable<string>} The the CSS class string of the border radius token.
 */
export declare function formatAndValidBorderRadius(token: unknown): Nullable<string>;
/**
 * If the token is a valid border color, return CSS class string of the border color. Otherwise, log an error message
 *
 * @param {unknown} token - The value passed in by the user.
 * @returns {Nullable<string>}  return the CSS class string of the border color
 */
export declare function formatAndValidBorderColor(token: unknown): Nullable<string>;
/**
 * If the token is a valid border, return CSS class string of the border. Otherwise, log an error message
 *
 * @param {unknown} token - The value passed in by the user.
 * @returns {Nullable<string>}  return the CSS class string of the border
 */
export declare function formatAndValidBorder(token: unknown): Nullable<string>;
/**
 * If the token is a valid background color, return it with the v- prefix. Otherwise, log an error
 *
 * @param {unknown} token - The value of the token.
 * @param {TokenMode[]} withModes - TokenMode[] = []
 * @returns {Nullable<string>} CSS class string for the background color token with modes supported.
 */
export declare function formatAndValidBackgroundColor(token: unknown, withModes?: TokenMode[]): Nullable<string>;
/**
 * If the token is a valid text color, return the token prefixed with `v-` and formatted with the given modes. Otherwise,
 * log an error
 *
 * @param {unknown} token - The token to format.
 * @param {TokenMode[]} withModes - TokenMode[] = []
 * @returns {Nullable<string>} A CSS class string that is either a valid color or a valid color with modes.
 */
export declare function formatAndValidTextColor(token: unknown, withModes?: TokenMode[]): Nullable<string>;
/**
 * If the token is a valid breakpoint, return CSS class string for the flex breakpoint. Otherwise, log an error
 *
 * @param {unknown} token - The value of the breakpoint.
 * @returns {Nullable<string>} CSS class string for the flex breakpoint.
 */
export declare function formatAndValidFlexBreakpoint(token: unknown): Nullable<string>;
/**
 * If the token is a breakpoint, return the breakpoint value. Otherwise, log an error and return 0
 *
 * @param {unknown} token - The value passed in by the user.
 * @returns {Nullable<number>} value of the breakpoint.
 */
export declare function formatAndValidBreakpointSize(token: unknown): Nullable<number>;
/**
 * If the token is a valid spacing token, return a string with the token name prefixed with `v-gap-`. Otherwise, log an
 * error message
 *
 * @param {unknown} token - The value passed in by the user.
 * @returns {Nullable<string>} CSS class string for the given gap token.
 */
export declare function formatAndValidGap(token: unknown): Nullable<string>;
/**
 * If the token is a valid shadows token type, return the token with the prefix "v-". Otherwise, log an error message
 *
 * @param {string} token - The token to format.
 * @param {TokenMode[]} withModes - TokenMode[] = []
 * @returns {Nullable<string>} CSS class string of the shadow token with modes supported
 */
export declare function formatAndValidShadow(token: string, withModes?: TokenMode[]): Nullable<string>;
/**
 * It takes a token and a flag, and returns a string
 *
 * @typedef Flag key of ManagedResponsiveScopeInput
 * @param {ResponsiveType<ManagedResponsiveScopeInput[Flag]>} token - The token to format.
 * @param {Flag} flag - The flag that the token is being formatted for.
 * @returns {Nullable<ManagedResponsiveScopeOutput[Flag]>} A nullable string
 */
export declare function formatAndValidResponsiveToken<Flag extends keyof ManagedResponsiveScopeInput>(token: ResponsiveType<ManagedResponsiveScopeInput[Flag]>, flag: Flag): Nullable<ManagedResponsiveScopeOutput[Flag]>;
/**
 * The function `formatAndValidTypographyToken` formats a typography token by adding a prefix and checks if it is a valid typography token.
 *
 * @param {string} token - The `token` parameter is a string that represents a typography token.
 * @returns {Nullable<string>} a string value.
 */
export declare function formatAndValidTypographyToken(token: string): Nullable<string>;
/**
 * The function `formatAndValidStateToken` formats and validates a state token based on a specified flag.
 *
 * @param {StateVariantType} token - The `token` parameter is a value that represents a state variant for a specific flag
 * in a managed state scope input.
 * @param {Flag} flag - The `flag` parameter is a key of the `ManagedStateScopeInput` type.
 * @returns {Nullable<string>} a formatted and validated state token as a string, or `null` if the input token is `null`
 * or `undefined`.
 */
export declare function formatAndValidStateToken<Flag extends keyof ManagedStateScopeInput, State extends CssStatesType>(token: StateVariantType<ManagedStateScopeInput[Flag], State>, flag: Flag): Nullable<string>;
