export type VisibleInInspectorDecoratorType = "number" | "boolean" | "string" | "vector2" | "vector3" | "color3" | "color4" | "entity" | "texture" | "keymap" | "asset"; export type VisibleInInspectorDecoratorConfiguration = { type: VisibleInInspectorDecoratorType; description?: string; }; /** * Makes the decorated property visible in the editor inspector as a boolean. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (description, etc.). */ export declare function visibleAsBoolean(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInInspectorDecoratorStringConfiguration = VisibleInInspectorDecoratorConfiguration & { multiline?: boolean; }; /** * Makes the decorated property visible in the editor inspector as a string. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (description, etc.). */ export declare function visibleAsString(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; /** * Makes the decorated property visible in the editor inspector as a number. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (min, max, etc.). */ export declare function visibleAsNumber(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInInspectorDecoratorNumberConfiguration = VisibleInInspectorDecoratorConfiguration & { min?: number; max?: number; step?: number; }; /** * Makes the decorated property visible in the editor inspector as a vector2. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (min, max, etc.). */ export declare function visibleAsVector2(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInInspectorDecoratorVector2Configuration = VisibleInInspectorDecoratorConfiguration & { min?: number; max?: number; step?: number; asDegrees?: boolean; }; /** * Makes the decorated property visible in the editor inspector as a vector3. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (min, max, etc.). */ export declare function visibleAsVector3(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInInspectorDecoratorVector3Configuration = VisibleInInspectorDecoratorConfiguration & { min?: number; max?: number; step?: number; asDegrees?: boolean; }; /** * Makes the decorated property visible in the editor inspector as a color3. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (min, max, etc.). */ export declare function visibleAsColor3(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInInspectorDecoratorColor3Configuration = VisibleInInspectorDecoratorConfiguration & { noClamp?: boolean; noColorPicker?: boolean; }; /** * Makes the decorated property visible in the editor inspector as a color4. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (min, max, etc.). */ export declare function visibleAsColor4(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInInspectorDecoratorColor4Configuration = VisibleInInspectorDecoratorConfiguration & { noClamp?: boolean; noColorPicker?: boolean; }; /** * Makes the decorated property visible in the editor inspector as an entity. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param entityType defines the type of entity to be displayed in the inspector (node, sound, animationGroup or particleSystem). * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (min, max, etc.). */ export declare function visibleAsEntity(entityType: VisibleAsEntityType, label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleAsEntityType = "node" | "sound" | "animationGroup" | "particleSystem"; export type VisibleInInspectorDecoratorEntityConfiguration = VisibleInInspectorDecoratorConfiguration & { entityType?: VisibleAsEntityType; }; /** * Makes the decorated property visible in the editor inspector as a Texture. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (accept cubes, etc.). */ export declare function visibleAsTexture(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInInspectorDecoratorTextureConfiguration = VisibleInInspectorDecoratorConfiguration & { acceptCubes?: boolean; onlyCubes?: boolean; }; /** * Makes the decorated property visible in the editor inspector as a KeyMap. * The property can be customized per object in the editor and the custom value is applied * once the script is invoked at runtime in the game/application. * This can be used only by scripts using Classes. * @param label defines the optional label displayed in the inspector in the editor. * @param configuration defines the optional configuration for the field in the inspector (description, etc.). */ export declare function visibleAsKeyMap(label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void; export type VisibleInspectorDecoratorAssetPossibleTypes = "json" | "material" | "nodeParticleSystemSet" | "scene" | "gui" | "navmesh" | "cinematic" | "ragdoll"; export type VisibleInspectorDecoratorAssetConfiguration = VisibleInInspectorDecoratorConfiguration & { assetType: T; typeRestriction?: T extends "material" ? "PBRMaterial" | "StandardMaterial" | "AnyMaterial" : never; }; export declare function visibleAsAsset(assetType: VisibleInspectorDecoratorAssetPossibleTypes, label?: string, configuration?: Omit): (target: any, propertyKey: string | Symbol) => void;