mqtt2ha
    Preparing search index...

    Interface ComponentConfiguration<T>

    Type-safe configuration interface for specific component types. Extends the base configuration with type-specific component field.

    interface ComponentConfiguration<T extends ComponentType> {
        availability?: AvailabilityConfiguration;
        component: T;
        device?: DeviceConfiguration;
        device_class?: string;
        enabled_by_default?: boolean;
        entity_category?: "config" | "diagnostic" | "system";
        expire_after?: number;
        force_update?: boolean;
        icon?: string;
        json_attributes_template?: string;
        name?: string;
        object_id?: string;
        origin?: OriginConfiguration;
        qos?: number;
        unique_id?: string;
        value_template?: string;
        [key: string]: unknown;
    }

    Type Parameters

    • T extends ComponentType

      The specific type of component being configured

    Hierarchy (View Summary)

    Indexable

    • [key: string]: unknown

      Additional properties to serialize as part of the configuration payload. Typically used for command and state topics.

    Index

    Properties

    Configures the availability settings of the entity.

    component: T

    The type of component, constrained to valid component types

    Information about the device this component is a part of to tie it into the device registry. Only works when unique_id is set. At least one of identifiers or connections must be present to identify the device.

    device_class?: string

    Sets the class of the device, changing the device state and icon that is displayed on the frontend. The device_class can be null. Different components have different valid device classes.

    enabled_by_default?: boolean

    Flag which defines if the entity should be enabled when first added. Default is true.

    entity_category?: "config" | "diagnostic" | "system"

    The category of the entity

    • "config": For configuration related entities.
    • "diagnostic": For read-only diagnostic entities.
    • "system": For system related entities.
    expire_after?: number

    If set, it defines the number of seconds after the sensor’s state expires, if it’s not updated. After expiry, the sensor’s state becomes unavailable. Default the sensors state never expires.

    force_update?: boolean

    Sends update events (which results in update of state object’s last_changed) even if the sensor’s state hasn’t changed. Useful if you want to have meaningful value graphs in history or want to create an automation that triggers on every incoming state message (not only when the sensor’s new state is different to the current one).

    icon?: string

    Icon to use for the entity in the frontend. Should be a Material Design Icon (format: mdi:icon-name).

    json_attributes_template?: string

    Template to extract the JSON dictionary from the json_attributes_topic.

    name?: string

    The name of the entity. This will be used for the entity name in the Home Assistant UI. Can be set to null if only the device name is relevant.

    object_id?: string

    Used instead of name for automatic generation of entity_id.

    Information about the application that is the origin of the component.

    qos?: number

    The maximum QoS level to be used when receiving and publishing messages. Default is 0.

    unique_id?: string

    An ID that uniquely identifies this entity. If two entities have the same unique ID, Home Assistant will raise an exception. Required when used with device-based discovery.

    value_template?: string

    Defines a template to extract the value from the payload. Useful when the payload isn't a simple value.