import type { AuthClientRequest, AuthResultWithSID } from "../Auth/AuthTypes"; import type { DB, DBHandlerServer, Prostgles } from "../Prostgles"; import type { ProstglesInitOptions } from "../ProstglesTypes"; import type { ServerFunctionDefinition } from "./defineServerFunction"; import type { DboTable, DboTableCommand, ParsedTableRule, PublishParams } from "./publishTypesAndUtils"; import { type PermissionScope, type PublishObject } from "./publishTypesAndUtils"; export declare class PublishParser { publish: ProstglesInitOptions["publish"]; publishRawSQL?: any; dbo: DBHandlerServer; db: DB; prostgles: Prostgles; constructor(prostgles: Prostgles); getPublishParams(clientReq: AuthClientRequest, clientInfo: AuthResultWithSID | undefined): Promise; getAllowedFunctions(clientReq: AuthClientRequest, userData: AuthResultWithSID | undefined): Promise | undefined>; /** * Parses the first level of publish. (If false then nothing if * then all tables and views) */ getPublishObject(clientReq: AuthClientRequest, clientInfo: AuthResultWithSID | undefined): Promise; getValidatedRequestRuleWusr({ tableName, command, clientReq }: DboTableCommand, scope: PermissionScope | undefined): Promise; getParsedTableRule({ tableName, clientReq }: Pick, clientInfo: AuthResultWithSID | undefined, scope: PermissionScope | undefined): Promise; validateRequestRule({ tableName, command }: DboTableCommand, tableRule: ParsedTableRule, scope: PermissionScope | undefined): void; getTableRules(args: DboTable, clientInfo: AuthResultWithSID | undefined, scope: PermissionScope | undefined): Promise; getTableRulesWithoutFileTable: (args_0: DboTable, clientInfo: AuthResultWithSID | undefined, overridenPublish?: PublishObject | undefined) => Promise; getSchemaFromPublish: (args_0: AuthClientRequest & { userData: AuthResultWithSID | undefined; }, scope: PermissionScope | undefined) => Promise<{ tables: import("prostgles-types").DBSchemaTable[]; tableSchemaErrors: import("prostgles-types").TableSchemaErrors; }>; } export * from "./publishTypesAndUtils"; //# sourceMappingURL=PublishParser.d.ts.map