import type { AuthClientRequest, AuthResultWithSID } from "../Auth/AuthTypes"; import type { PublishParser } from "./PublishParser"; import type { ParsedPublishTable } from "./publishTypesAndUtils"; import type { LocalParams } from "../DboBuilder/DboBuilder"; /** * Permissions for referencedTables columns are propagated to the file table (even if file table has no permissions) * File table existing permissions that include the referenced column resulting permissions are left as they are * Select on a referenced column allows selecting from file table any records that join the referenced table and the select filters * Insert on a referenced column allows inserting a file (according to any file type/size rules) only if it is a nested from that table * Update on a referenced column allows updating a file (delete and insert) only if it is a nested update from that table * Delete on a referenced column table allows deleting any referenced file */ export declare function getFileTableRules(this: PublishParser, fileTableName: string, fileTablePublishRules: ParsedPublishTable | undefined, clientReq: AuthClientRequest | undefined, clientInfo: AuthResultWithSID | undefined, scope: LocalParams["scope"]): Promise<{ rules: ParsedPublishTable | undefined; allowedInserts: { table: string; column: string; }[]; }>; //# sourceMappingURL=getFileTableRules.d.ts.map