import { P as PermixDefinition, a as Permix, b as PermixStateJSON } from '../shared/permix.CuefdCK4.mjs';
export { C as CheckContext, f as CheckFunctionObject, h as CheckFunctionParams, e as PermixRules, c as checkWithRules, d as createPermix, g as getRules } from '../shared/permix.CuefdCK4.mjs';
export { M as MaybePromise, i as isRulesValid } from '../shared/permix.BDsgFWDK.mjs';

type DehydratedState<Permissions extends PermixDefinition> = PermixStateJSON<Permissions>;
/**
 * @deprecated Use `permix.dehydrate()` and `permix.hydrate(state)` directly instead.
 */
declare function dehydrate<Permissions extends PermixDefinition>(permix: Permix<Permissions>): PermixStateJSON<Permissions>;
/**
 * @deprecated Use `permix.dehydrate()` and `permix.hydrate(state)` directly instead.
 */
declare function hydrate<Permissions extends PermixDefinition>(permix: Permix<Permissions>, state: DehydratedState<Permissions>): void;

export { Permix, PermixDefinition, dehydrate, hydrate };
export type { DehydratedState };
