import {PageConfigTypes} from "../../../custom-types/pageConfig-types";
import logger from "../../reporting-helpers/logger";
import waitForElementStateByIndex from "./waitForElementStateByIndex";
import {browser, $, $$, expect} from '@wdio/globals'

export default async function (elementPosition: number = 0, pageConfig: PageConfigTypes, elementState: string = "Displayed") {
    const index = elementPosition - 1;
    await waitForElementStateByIndex(elementPosition, pageConfig, false, elementState, 15, 1000)
    let elementsByIndex = await $$(pageConfig.selector)[index]
    await elementsByIndex.click();
    logger.info(`Clicked the "${pageConfig.pageId}.${pageConfig.elementKey}" element found at ${elementPosition} position.`);
}
