import { destructor } from '@synnaxlabs/x'; import { z } from 'zod'; import { aether } from '../../../aether/aether'; import { status } from '../../../status/aether'; import { telem } from '../../../telem/aether'; import { diagram } from '../../diagram/aether'; import { staleness } from '../../staleness/aether'; export declare const toggleStateZ: z.ZodObject<{ stalenessTimeout: z.ZodDefault; stale: z.ZodDefault; enabled: z.ZodBoolean; sink: z.ZodDefault>>; variant: z.ZodLiteral<"sink">; valueType: z.ZodLiteral<"boolean">; }, z.core.$strip>>; source: z.ZodDefault>>; variant: z.ZodLiteral<"source">; valueType: z.ZodLiteral<"boolean">; }, z.core.$strip>>; }, z.core.$strip>; export type ToggleState = z.input; /** Methods schema for Toggle RPC */ export declare const toggleMethodsZ: { toggle: z.ZodFunction, z.ZodVoid>; }; interface InternalState { source: telem.BooleanSource; sink: telem.BooleanSink; addStatus: status.Adder; stopListening: destructor.Destructor; staleness: staleness.Registration; } export declare class Toggle extends aether.Leaf implements diagram.Element, aether.HandlersFromSchema { static readonly TYPE = "Toggle"; static readonly METHODS: { toggle: z.ZodFunction, z.ZodVoid>; }; static readonly z: z.ZodObject<{ stalenessTimeout: z.ZodDefault; stale: z.ZodDefault; enabled: z.ZodBoolean; sink: z.ZodDefault>>; variant: z.ZodLiteral<"sink">; valueType: z.ZodLiteral<"boolean">; }, z.core.$strip>>; source: z.ZodDefault>>; variant: z.ZodLiteral<"source">; valueType: z.ZodLiteral<"boolean">; }, z.core.$strip>>; }, z.core.$strip>; schema: z.ZodObject<{ stalenessTimeout: z.ZodDefault; stale: z.ZodDefault; enabled: z.ZodBoolean; sink: z.ZodDefault>>; variant: z.ZodLiteral<"sink">; valueType: z.ZodLiteral<"boolean">; }, z.core.$strip>>; source: z.ZodDefault>>; variant: z.ZodLiteral<"source">; valueType: z.ZodLiteral<"boolean">; }, z.core.$strip>>; }, z.core.$strip>; methods: { toggle: z.ZodFunction, z.ZodVoid>; }; afterUpdate(ctx: aether.Context): void; toggle(): void; private updateEnabledState; afterDelete(): void; } export declare const REGISTRY: aether.ComponentRegistry; export {}; //# sourceMappingURL=toggle.d.ts.map