namespace ov::op::internal

namespace internal {

// classes

class AUGRUCell;
class AUGRUSequence;
class GenerateProposalsIEInternal;
class MulticlassNmsIEInternal;
template <typename BaseNmsOp>
class NmsStaticShapeIE;
class NonMaxSuppressionIEInternal;

// global functions

template <class ShapeType>
void shape_infer(
    const ov::op::internal::AUGRUCell \* op,
    const std::vector<ShapeType>& input_shapes,
    std::vector<ShapeType>& output_shapes
    );

template <class ShapeType>
void shape_infer(
    const ov::op::internal::AUGRUSequence \* op,
    const std::vector<ShapeType>& input_shapes,
    std::vector<ShapeType>& output_shapes
    );

} // namespace internal