/**
 * @example
 * const permissions = {
 *   post: {
 *     create: true,
 *     read: false,
 *   },
 * }
 *
 * isRulesValid(permissions) // true
 *
 * const permissions2 = {
 *   post: {
 *     create: true,
 *     read: 'string',
 *   },
 * }
 *
 * isRulesValid(permissions2) // false
 */
declare function isRulesValid<T>(value: unknown): value is T;
type MaybePromise<T> = T | Promise<T>;

export { isRulesValid as i };
export type { MaybePromise as M };
