/** * This file is part of the NocoBase (R) project. * Copyright (c) 2020-2024 NocoBase Co., Ltd. * Authors: NocoBase Team. * * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License. * For more information, please refer to: https://www.nocobase.com/agreement. */ import type { RoleCollectionRecord } from './types'; export interface UpdateResource { update: (params: Record) => Promise; } export interface GetResource { get: (params: Record) => Promise; } export interface ListResource { list: (params: Record) => Promise; } export interface CreateUpdateResource extends UpdateResource { create: (params: Record) => Promise; } export interface DestroyResource { destroy: (params: Record) => Promise; } export declare function updateGeneralActionPermissions(resource: UpdateResource, roleName: string, actions: string[]): Promise; export declare function saveRoleResourcePermissions(resource: CreateUpdateResource, collection: RoleCollectionRecord, dataSourceKey: string, values: Record): Promise; export declare function saveScopeRecord(resource: CreateUpdateResource, options: { id?: string | number; resourceName: string; values: Record; scope: unknown; }): Promise; export declare function destroyScopeRecord(resource: DestroyResource, id: string | number): Promise;