cline-sdk
Version:
Comprehensive SDK for Cline - AI-powered development assistant with database integration, execution modes, and custom functions
96 lines • 2.83 kB
TypeScript
/**
* Database Row Level Security (RLS) Tool
*
* Manages PostgreSQL Row Level Security policies and settings
*/
import { PostgreSQLManager } from "../database/postgres-manager";
export interface DatabaseRLSToolInput {
action: "enableRLS" | "disableRLS" | "createPolicy" | "dropPolicy" | "listPolicies" | "testPolicy";
schemaName: string;
tableName: string;
policyName?: string;
command?: "SELECT" | "INSERT" | "UPDATE" | "DELETE" | "ALL";
roles?: string[];
using?: string;
withCheck?: string;
testUserId?: string;
force?: boolean;
}
export interface DatabaseRLSToolResult {
success: boolean;
message?: string;
data?: any;
error?: string;
executionTime: number;
warnings?: string[];
}
export declare class DatabaseRLSTool {
private dbManager;
constructor(dbManager: PostgreSQLManager);
execute(input: DatabaseRLSToolInput): Promise<DatabaseRLSToolResult>;
private enableRLS;
private disableRLS;
private createPolicy;
private dropPolicy;
private listPolicies;
private getPolicyDescription;
private testPolicy;
getDefinition(): {
name: string;
description: string;
inputSchema: {
type: string;
properties: {
action: {
type: string;
description: string;
enum: string[];
};
schemaName: {
type: string;
description: string;
};
tableName: {
type: string;
description: string;
};
policyName: {
type: string;
description: string;
};
command: {
type: string;
description: string;
enum: string[];
default: string;
};
roles: {
type: string;
description: string;
items: {
type: string;
};
};
using: {
type: string;
description: string;
};
withCheck: {
type: string;
description: string;
};
testUserId: {
type: string;
description: string;
};
force: {
type: string;
description: string;
default: boolean;
};
};
required: string[];
};
};
}
//# sourceMappingURL=database-rls-tool.d.ts.map