import { MatterbridgeDynamicPlatform, PlatformConfig, PlatformMatterbridge } from 'matterbridge'; import { AnsiLogger } from 'matterbridge/logger'; import { FeatureCache, IotasClient } from 'iotas-ts'; import type { SnapshotFilter } from 'iotas-ts'; export interface IotasPluginConfig extends PlatformConfig { username: string; password: string; unit?: string; pollingInterval?: number; } export default function initializePlugin(matterbridge: PlatformMatterbridge, log: AnsiLogger, config: PlatformConfig): IotasPlatform; export declare class IotasPlatform extends MatterbridgeDynamicPlatform { iotasClient: IotasClient; featureCache: FeatureCache; pollingInterval: number; private deviceEntries; constructor(matterbridge: PlatformMatterbridge, log: AnsiLogger, config: IotasPluginConfig); createSnapshotFilter(): SnapshotFilter | undefined; onStart(reason?: string): Promise; onConfigure(): Promise; onShutdown(reason?: string): Promise; private discoverDevices; }