import type { ZodObject, ZodUUID } from 'zod';
export interface $Objects {
}
export type ObjectType = keyof $Objects extends never ? string : keyof $Objects;
type ObjectValues = keyof $Objects extends never ? Record<string, {
    id: string;
}[]> : {
    [K in keyof $Objects]: ($Objects[K] & {
        id: string;
    })[];
};
export declare function useSchema<Type extends ObjectType, S extends ZodObject<{
    id: ZodUUID;
}>>(type: Type, schema: S): void;
export declare function get<Type extends ObjectType>(type: Type): ObjectValues[Type];
export declare function save<Type extends ObjectType>(type: Type, objects: ObjectValues[Type]): void;
export {};
