You can register Background Group Control in elementor widget for background color, background image, background gradient or background video. When using this group control, the type should be set to Group_Control_Background::get_type() method.

Available types are classicgradient and video. Default is an empty array, including all the types. Here is the example of Background Group Control.

<?php
class Elementor_Test_Widget extends \Elementor\Widget_Base {

	protected function register_controls() {

		$this->start_controls_section(
			'test_background_section',
			[
				'label' => esc_html__( 'Test Background', 'textdomain' ),
				'tab' => \Elementor\Controls_Manager::TAB_CONTENT,
			]
		);

		$this->add_group_control(
			\Elementor\Group_Control_Background::get_type(),
			[
				'name' => 'background',
				'types' => [ 'classic', 'gradient', 'video' ],
				'selector' => '{{WRAPPER}} .your-class',
			]
		);

		$this->end_controls_section();

	}

	protected function render() {
		$settings = $this->get_settings_for_display();
		?>
		<div class="your-class">
			...
		</div>
		<?php
	}

	protected function content_template() {
		?>
		<div class="your-class">
			...
		</div>
		<?php
	}

}