import { type GetValueDB, type MaybeNotKnown, type MessageOrCCLogEntry, type SupervisionResult, type WithAddress } from "@zwave-js/core";
import { Bytes } from "@zwave-js/shared";
import { CCAPI, SET_VALUE, type SetValueImplementation } from "../lib/API.js";
import { type CCRaw, CommandClass } from "../lib/CommandClass.js";
import { BasicWindowCoveringCommand, type LevelChangeDirection } from "../lib/_Types.js";
import type { CCEncodingContext, CCParsingContext } from "../lib/traits.js";
import { BasicWindowCoveringCCValues } from "./_CCValues.generated.js";
export { BasicWindowCoveringCCValues };
export declare class BasicWindowCoveringCCAPI extends CCAPI {
    supportsCommand(cmd: BasicWindowCoveringCommand): MaybeNotKnown<boolean>;
    protected get [SET_VALUE](): SetValueImplementation;
    startLevelChange(direction: keyof typeof LevelChangeDirection): Promise<SupervisionResult | undefined>;
    stopLevelChange(): Promise<SupervisionResult | undefined>;
}
export declare class BasicWindowCoveringCC extends CommandClass {
    ccCommand: BasicWindowCoveringCommand;
}
export interface BasicWindowCoveringCCStartLevelChangeOptions {
    direction: keyof typeof LevelChangeDirection;
}
export declare class BasicWindowCoveringCCStartLevelChange extends BasicWindowCoveringCC {
    constructor(options: WithAddress<BasicWindowCoveringCCStartLevelChangeOptions>);
    static from(raw: CCRaw, ctx: CCParsingContext): BasicWindowCoveringCCStartLevelChange;
    direction: keyof typeof LevelChangeDirection;
    serialize(ctx: CCEncodingContext): Promise<Bytes>;
    toLogEntry(ctx?: GetValueDB): MessageOrCCLogEntry;
}
export declare class BasicWindowCoveringCCStopLevelChange extends BasicWindowCoveringCC {
}
//# sourceMappingURL=BasicWindowCoveringCC.d.ts.map