In This Article
  • GraphMetadata
  • GraphMetadataOptions
  • GraphMetadataFlags
  • # GraphMetadata ```ts /** * Graph metadata defines information about a GraphProperty or GraphCategory. */ export declare class GraphMetadata extends GraphObject { constructor(options?: GraphMetadataOptions); /** * Gets or sets a descriptive label for the property. */ get label(): string; set label(value: string); /** * Gets or sets a description for the property. */ get description(): string; set description(value: string); /** * Gets or sets a group for the property. */ get group(): string; set group(value: string); /** * Gets or sets the default value for a property. Only used for a GraphMetadata associated with a property. */ get defaultValue(): V | undefined; set defaultValue(value: V | undefined); /** * Gets or sets the flags that control the behavior of a property or category. */ get flags(): GraphMetadataFlags; set flags(flags: GraphMetadataFlags); /** * Gets a value indicating whether the property can be changed once it is set. */ get isImmutable(): boolean; /** * Gets a value indicating whether the property can be removed. */ get isRemovable(): boolean; /** * Gets a value indicating whether the property can be serialized. */ get isSerializable(): boolean; /** * Gets a value indicating whether the property can be shared. */ get isSharable(): boolean; /** * Creates a copy of the metadata. */ copy(): GraphMetadata; } ``` ### See Also * [GraphObject](graphObject.md#graphobject) * [GraphMetadataOptions](#graphmetadataoptions) * [GraphMetadataFlags](#graphmetadataflags) * [GraphMetadataContainer](graphMetadataContainer.md#graphmetadatacontainer) * [GraphCategoryCollection](graphCategoryCollection.md#graphcategorycollection) * [GraphPropertyCollection](graphPropertyCollection.md#graphpropertycollection) * [API Documentation](index.md) # GraphMetadataOptions ```ts export interface GraphMetadataOptions { /** * A descriptive label for the property. */ label?: string; /** * A description for the property. */ description?: string; /** * A group for the property. */ group?: string; /** * The default value for a graph property. Only used for a GraphMetadata associated with a property. */ defaultValue?: V; /** * Flags that control the behavior of a property or category. */ flags?: GraphMetadataFlags; /** * Properties to define on the metadata object. Only used for a GraphMetadata associated with a category. */ properties?: Iterable; } ``` ### See Also * [GraphMetadata](#graphmetadata) * [GraphMetadataFlags](#graphmetadataflags) * [GraphProperty](graphProperty.md#graphproperty) * [API Documentation](index.md) # GraphMetadataFlags ```ts export declare const enum GraphMetadataFlags { None = 0, Immutable = 1, Removable = 2, Sharable = 32, Default = Removable | Sharable | Serializable, } ``` ### See Also * [GraphMetadata](#graphmetadata) * [GraphMetadataOptions](#graphmetadataoptions) * [API Documentation](index.md)