What is the proper way of using IMPORTED_TARGET

Following up on the What is the proper way to use FindPkgConfig
and FindPkgConfighttps://cmake.org/cmake/help/v3.17/module/FindPkgConfig.html?highlight=pkg_search_module#command:pkg_search_module
Could you please advise what is the use case for IMPORTED_TARGET.
The prefix (e,g, SDL2) variable (eg. SDL2_LIBRARIES ) is accepted by the target_link_libraries so what functionality is added by IMPORTED_TARGET named PkgConfig::<prefix> ( e.g. PkgConfig::SDL2, see snippet below) ?
IMPORTED targets are not allowed to be installed and I doubt this could be circumvented by somehow exporting _LIBRARIES, right?

pkg_search_module(SDL2 REQUIRED sdl2)
target_include_directories(app SYSTEM PUBLIC ${SDL2_INCLUDE_DIRS}
target_link_libraries(app ${SDL2_LIBRARIES})
is there a case when both _XXXX and PkgConfig:: are used?

Why not just link to Pkgconfig::SDL2 here? I recommend ignoring the variables when an imported target exists; modern CMake is more geared towards making these targets the main way of doing things.

Does this mean use of IMPORTED_TARGET reflects pre-modern cmake and is no longer recommended and there no any scenarios with modern cmake where it could be useful?
Also PkgConfig::SDL2 is a target, not just variable, right? So can this target be an target argument in install(TARGETS PkgConfig::SDL2 ?

No? Use the target. Ignore the variables (_INCLUDE_DIRS and _LIBRARIES).

It is a target, not a variable.

No, as I said in the other thread, you cannot install imported targets.