@forestadmin/forestadmin-client
Version:
This package contains the logic to use the ForestAdmin API inside an agent.
73 lines • 3.11 kB
TypeScript
import ActionPermission from './action-permission';
import RenderingPermissionService from './rendering-permission';
import { CollectionActionEvent } from './types';
import { Chart } from '../charts/types';
import { PermissionService } from '../types';
export default class PermissionServiceWithCache implements PermissionService {
private readonly actionPermissionService;
private readonly renderingPermissionService;
constructor(actionPermissionService: ActionPermission, renderingPermissionService: RenderingPermissionService);
canOnCollection({ userId, collectionName, event, }: {
userId: number;
event: CollectionActionEvent;
collectionName: string;
}): Promise<boolean>;
canExecuteSegmentQuery(params: {
userId: number;
collectionName: string;
renderingId: number;
segmentQuery: string;
connectionName?: string;
}): Promise<boolean>;
canTriggerCustomAction({ userId, collectionName, customActionName, }: {
userId: number;
customActionName: string;
collectionName: string;
}): Promise<boolean>;
doesTriggerCustomActionRequiresApproval({ userId, collectionName, customActionName, }: {
userId: number;
customActionName: string;
collectionName: string;
}): Promise<boolean>;
canApproveCustomAction({ userId, collectionName, customActionName, requesterId, }: {
userId: number;
customActionName: string;
collectionName: string;
requesterId: number;
}): Promise<boolean>;
getConditionalTriggerCondition({ userId, collectionName, customActionName, }: {
userId: number;
customActionName: string;
collectionName: string;
}): Promise<import("./types").RawTreeWithSources>;
getConditionalRequiresApprovalCondition({ userId, collectionName, customActionName, }: {
userId: number;
customActionName: string;
collectionName: string;
}): Promise<import("./types").RawTreeWithSources>;
getConditionalApproveCondition({ userId, collectionName, customActionName, }: {
userId: number;
customActionName: string;
collectionName: string;
}): Promise<import("./types").RawTreeWithSources>;
getConditionalApproveConditions({ collectionName, customActionName, }: {
customActionName: string;
collectionName: string;
}): Promise<Map<number, import("./types").RawTreeWithSources>>;
getRoleIdsAllowedToApproveWithoutConditions({ collectionName, customActionName, }: {
customActionName: string;
collectionName: string;
}): Promise<number[]>;
canRequestCustomActionParameters({ userId, collectionName, customActionName, }: {
userId: number;
collectionName: string;
customActionName: string;
}): Promise<boolean>;
canExecuteChart({ renderingId, userId, chartRequest, }: {
renderingId: number;
userId: number;
chartRequest: Chart;
}): Promise<boolean>;
private getRoleIdForUserId;
}
//# sourceMappingURL=permission-with-cache.d.ts.map