Seven descriptors written from their pages replace seven stubs. All are version 3; 1.5.2 announced Speaker, StepSpeaker, EqualizerController and PlaybackStateReporter as version 1, and all but ChannelController without a property. StepSpeaker has no properties object in discovery and PlaybackController one without fields, next to supportedOperations; a directive for an operation the device did not list is answered with INVALID_DIRECTIVE. The equalizer declares bands, modes or both under "configurations", a TV its inputs from the 61 names of the page. Not described: the lineup of ChannelController, whose discovery example the page folds away. The discovery examples of InputController spell one key "friendNames"; the fixtures have friendlyNames, as its table does. 62 examples of the six pages are saved as fixtures. 241 tests pass, 215 before. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
41 lines
1.9 KiB
TypeScript
41 lines
1.9 KiB
TypeScript
/**
|
|
* The channel of a TV. ChangeChannel names the channel by one or more of number, callSign, affiliateCallSign and
|
|
* uri, or by channelMetadata.name alone. The lineup of a TV provider is not described: the page folds the discovery
|
|
* example that has one.
|
|
*/
|
|
export declare const ChannelController: import("../types.js").InterfaceDescriptor<{
|
|
channel: {
|
|
name: string;
|
|
value: import("../schema.js").Schema<import("../schema.js").InferShape<{
|
|
/** "256", "13.1" */
|
|
number: import("../schema.js").OptionalSchema<string>;
|
|
callSign: import("../schema.js").OptionalSchema<string>;
|
|
affiliateCallSign: import("../schema.js").OptionalSchema<string>;
|
|
uri: import("../schema.js").OptionalSchema<string>;
|
|
}>>;
|
|
};
|
|
}, {
|
|
ChangeChannel: {
|
|
name: string;
|
|
payload: import("../schema.js").Schema<import("../schema.js").InferShape<{
|
|
channel: import("../schema.js").OptionalSchema<import("../schema.js").InferShape<{
|
|
/** "256", "13.1" */
|
|
number: import("../schema.js").OptionalSchema<string>;
|
|
callSign: import("../schema.js").OptionalSchema<string>;
|
|
affiliateCallSign: import("../schema.js").OptionalSchema<string>;
|
|
uri: import("../schema.js").OptionalSchema<string>;
|
|
}>>;
|
|
channelMetadata: import("../schema.js").OptionalSchema<import("../schema.js").InferShape<{
|
|
name: import("../schema.js").OptionalSchema<string>;
|
|
image: import("../schema.js").OptionalSchema<string>;
|
|
}>>;
|
|
}>>;
|
|
};
|
|
SkipChannels: {
|
|
name: string;
|
|
payload: import("../schema.js").Schema<import("../schema.js").InferShape<{
|
|
channelCount: import("../schema.js").Schema<number>;
|
|
}>>;
|
|
note: string;
|
|
};
|
|
}, {}, false>;
|