Remove ResourceType.

This commit is contained in:
MrKBear 2023-02-09 14:27:47 +08:00
parent 83dac5289f
commit d991d96ecb
4 changed files with 22 additions and 16 deletions

View File

@ -1,10 +1,18 @@
import type { ResourceTypeSet } from "./ResourceType";
type ResourceNameType = string | number;
type ResourceIdType = string | number | symbol;
interface Resource {
type: ResourceTypeSet;
/**
* Unique identification of resource type.
*/
type: ResourceNameType;
id: string | number;
/**
* Unique number of the resource instance.
*/
id: ResourceIdType;
}
export type { Resource };
export type { Resource, ResourceNameType, ResourceIdType };

View File

@ -1,5 +1,10 @@
import type { ShaderResource } from "./ShaderResource";
type ResourceSet = ShaderResource;
namespace ResourceName {
export type Shader = ShaderResource["type"];
}
export type { ResourceSet };
type ResourceSet = ShaderResource;
type ResourceNameSet = ResourceName.Shader;
export type { ResourceName, ResourceNameSet, ResourceSet };

View File

@ -1,9 +0,0 @@
namespace ResourceType {
export type Shader = "SHADER" | 100_001;
}
type ResourceTypeSet = ResourceType.Shader;
export type { ResourceType, ResourceTypeSet };

View File

@ -1,6 +1,8 @@
import type { Resource } from "./Resource";
interface ShaderResource {
interface ShaderResource extends Resource {
type: "SHADER" | 100_001;
}
export type { ShaderResource };