For DS interfaces:
public interfaces: Can be used freely
protected interfaces: Before R15: can be used / after R15: can not use
private interfaces: can not use
local interfaces: can not use
For Your Own interfaces:
public interfaces: Can be used by other workspaces freely ( of cause you have to set it to pre-requesite list, just like using DS interfaces)
protected interfaces: Can be used only inside your workspace (cross frameworks)
private interfaces: Can be used only inside a framework (cross modules)
local interface: Only for one module