/**
 * Information about whether a resource is a singleton. Used as part of {@link ResourceMeta}
 * to define singleton characteristics of a resource.
 * A singleton resource means there will be only one instance for any user/workspace/system.
 * This can be configured using resource-level decorators: @{@link userSingleton},
 * @{@link workspaceSingleton}, or @{@link systemSingleton}.
 */
export interface ResourceMetaSingleton {
    /**
     * When true, indicates there is only one instance of this resource per user.
     * Can be set using the @{@link userSingleton} decorator.
     */
    userSingleton?: boolean;
    /**
     * When true, indicates there is only one instance of this resource per workspace.
     * Can be set using the @{@link workspaceSingleton} decorator.
     */
    workspaceSingleton?: boolean;
    /**
     * When true, indicates there is only one instance of this resource in the entire system.
     * Can be set using the @{@link systemSingleton} decorator.
     */
    systemSingleton?: boolean;
}
