import "./_dnt.polyfills.js";
import type { MaterializerId } from "./gen/typegraph_core";
type PolicyPerEffectAlt = {
    update?: Policy;
    delete?: Policy;
    create?: Policy;
    read?: Policy;
};
export declare class PolicyPerEffectObject {
    readonly value: PolicyPerEffectAlt;
    constructor(value: PolicyPerEffectAlt);
}
export default class Policy {
    #private;
    readonly _id: number;
    readonly name: string;
    constructor(_id: number, name: string);
    static public(): Policy;
    static context(key: string, check?: string | RegExp | null): Policy;
    static internal(): Policy;
    static create(name: string, materializerId: MaterializerId): Policy;
    /** create policy based on effects */
    static on(effects: PolicyPerEffectAlt): PolicyPerEffectObject;
}
export {};
