import { WrappingSelect } from "./wrapping-select.js";
/**
 * Typed wrapper around the chat-row `WrappingSelect`. Replaces the prior
 * raw-primitive consumption at `props-adapter.ts:106, :120` and removes the
 * accidental surface area (8 unused `WrappingSelect` setters) noted in
 * research Q4.
 *
 * Pattern modeled after `OptionListView` (`option-list-view.ts:27-93`):
 * mirror-then-delegate `setProps`; render is pure delegation; `Component`
 * triplet forwards.
 */
export class ChatRowView {
    constructor(config) {
        this.select = new WrappingSelect([config.item], 1, config.theme, {
            numberStartOffset: 0,
            totalItemsForNumbering: 1,
        });
    }
    setProps(props) {
        this.select.setFocused(props.focused);
        this.select.setNumbering(props.numbering.offset, props.numbering.total);
        this.select.setInputBuffer(props.inputBuffer);
        this.select.setInputCursor(props.inputCaret);
    }
    handleInput(_data) { }
    invalidate() {
        this.select.invalidate();
    }
    render(width) {
        return this.select.render(width);
    }
}
//# sourceMappingURL=chat-row-view.js.map