TenantAtlas/apps/platform/.pnpm-store/v10/files/9b/1a7eb4cfc0103c0d6de69247d474f4ce92b8657cb254829f5077839e45f9e7799ea8b20db463f8b1e5dc2c404f5ff51b3c1def057c8d8646a0833617a21007
Ahmed Darrazi 9f74f7a658
Some checks failed
PR Fast Feedback / fast-feedback (pull_request) Failing after 51s
feat: compress governance operator outcomes
2026-04-19 14:15:11 +02:00

25 lines
1.0 KiB
Plaintext

import { entityKind } from "../entity.cjs";
import type { SQL } from "../sql/sql.cjs";
import type { PgRole } from "./roles.cjs";
import type { PgTable } from "./table.cjs";
export type PgPolicyToOption = 'public' | 'current_role' | 'current_user' | 'session_user' | (string & {}) | PgPolicyToOption[] | PgRole;
export interface PgPolicyConfig {
as?: 'permissive' | 'restrictive';
for?: 'all' | 'select' | 'insert' | 'update' | 'delete';
to?: PgPolicyToOption;
using?: SQL;
withCheck?: SQL;
}
export declare class PgPolicy implements PgPolicyConfig {
readonly name: string;
static readonly [entityKind]: string;
readonly as: PgPolicyConfig['as'];
readonly for: PgPolicyConfig['for'];
readonly to: PgPolicyConfig['to'];
readonly using: PgPolicyConfig['using'];
readonly withCheck: PgPolicyConfig['withCheck'];
constructor(name: string, config?: PgPolicyConfig);
link(table: PgTable): this;
}
export declare function pgPolicy(name: string, config?: PgPolicyConfig): PgPolicy;