  impor, SubjectSet, FooBar, Anything } from '@ory/keto-namespace-types'

  class User implements Namespace {
	related: {
	  manager: User[]
	}
  }
class Group implements Namespace {
	related: {
	  members: (User | Group)[]
	}
}

class Folder implements Namespace {
	related: {
	  parents: File[]
	  viewers: SubjectSet<Group, "members">[]
	}

	permits = {
	  view: (ctx: Context): boolean => this.related.viewers.includes(ctx.subject),
	}
}

class File implements Namespace {
	related: {
}
}
