', '<'). * @param mixed $val Value to compare against. * @return QueryBuilder Current instance for method chaining. */ public function where(string $col, string $operator, mixed $val): QueryBuilder; /** * Adds an AND WHERE condition to the query. * @param string $col Column name to apply the condition to. * @param string $operator Operator to use in the condition (e.g., '=', '>', '<'). * @param mixed $val Value to compare against. * @return QueryBuilder Current instance for method chaining. */ public function andWhere(string $col, string $operator, mixed $val): QueryBuilder; /** * Adds an OR WHERE condition to the query. * @param string $col Column name to apply the condition to. * @param string $operator Operator to use in the condition (e.g., '=', '>', '<'). * @param mixed $val Value to compare against. * @return QueryBuilder Current instance for method chaining. */ public function orWhere(string $col, string $operator, mixed $val): QueryBuilder; /** * Executes the query and returns the result as an associative array. * @return array Result of the query execution. */ public function query(): array; }