"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ScrollType = exports.ScrollDirection = void 0;
exports.isScrollToElementStepDescriptor = isScrollToElementStepDescriptor;
exports.isScrollWithinElementStepDescriptor = isScrollWithinElementStepDescriptor;
exports.isScrollDeviceStepDescriptor = isScrollDeviceStepDescriptor;
var ScrollDirection;
(function (ScrollDirection) {
    ScrollDirection["Down"] = "down";
    ScrollDirection["Left"] = "left";
    ScrollDirection["Right"] = "right";
    ScrollDirection["Up"] = "up";
})(ScrollDirection || (exports.ScrollDirection = ScrollDirection = {}));
var ScrollType;
(function (ScrollType) {
    ScrollType["ScrollDeviceScreen"] = "scroll_device_screen";
    ScrollType["ScrollToElement"] = "scroll_to_element";
    ScrollType["ScrollWithinElement"] = "scroll_within_element";
})(ScrollType || (exports.ScrollType = ScrollType = {}));
function isScrollToElementStepDescriptor(step) {
    return (step.scrollType === ScrollType.ScrollToElement &&
        !!step.scrollDirection &&
        !!step.targetElementDescriptor);
}
function isScrollWithinElementStepDescriptor(step) {
    return (step.scrollType === ScrollType.ScrollWithinElement &&
        !!step.scrollDirection &&
        !!step.find);
}
function isScrollDeviceStepDescriptor(step) {
    return (step.scrollType === ScrollType.ScrollDeviceScreen && !!step.scrollDirection);
}
