}as{[policy:string]:Policy};// this `as` statement allows the policies to be overwritten;
asyncinit(app:App,collection_name:string){
awaitsuper.init(app,collection_name);
app.on("started",async()=>{
constroles=app.collections["user-roles"];
for(constactionof<const>["create","delete"]){
constpolicy=roles.getPolicy(action);
if(policyinstanceofPolicies.Public){
app.Logger.warn(
"USER POLICY",
`<user-roles> collection is using <public> access strategy for ${action} action. Anyone can change anyone elses role. This is the default behavior and you should overwrite it with <set_policy>`