import sys
import typing
import bpy_types

GenericType = typing.TypeVar("GenericType")


class Fade:
    animated_property: typing.Any
    duration: typing.Any
    end: typing.Any
    max_value: typing.Any
    start: typing.Any
    type: typing.Any

    def calculate_max_value(self, sequence, fade_fcurve):
        ...


class SequencerCrossfadeSounds(bpy_types.Operator):
    bl_idname: typing.Any
    bl_label: typing.Any
    bl_options: typing.Any
    bl_rna: typing.Any
    id_data: typing.Any

    def as_keywords(self, ignore):
        ...

    def as_pointer(self):
        ...

    def bl_rna_get_subclass(self):
        ...

    def bl_rna_get_subclass_py(self):
        ...

    def driver_add(self):
        ...

    def driver_remove(self):
        ...

    def execute(self, context):
        ...

    def get(self):
        ...

    def id_properties_clear(self):
        ...

    def id_properties_ensure(self):
        ...

    def id_properties_ui(self):
        ...

    def is_property_hidden(self):
        ...

    def is_property_overridable_library(self):
        ...

    def is_property_readonly(self):
        ...

    def is_property_set(self):
        ...

    def items(self):
        ...

    def keyframe_delete(self):
        ...

    def keyframe_insert(self):
        ...

    def keys(self):
        ...

    def path_from_id(self):
        ...

    def path_resolve(self):
        ...

    def poll(self, context):
        ...

    def poll_message_set(self):
        ...

    def pop(self):
        ...

    def property_overridable_library_set(self):
        ...

    def property_unset(self):
        ...

    def type_recast(self):
        ...

    def values(self):
        ...


class SequencerDeinterlaceSelectedMovies(bpy_types.Operator):
    bl_idname: typing.Any
    bl_label: typing.Any
    bl_options: typing.Any
    bl_rna: typing.Any
    id_data: typing.Any

    def as_keywords(self, ignore):
        ...

    def as_pointer(self):
        ...

    def bl_rna_get_subclass(self):
        ...

    def bl_rna_get_subclass_py(self):
        ...

    def driver_add(self):
        ...

    def driver_remove(self):
        ...

    def execute(self, context):
        ...

    def get(self):
        ...

    def id_properties_clear(self):
        ...

    def id_properties_ensure(self):
        ...

    def id_properties_ui(self):
        ...

    def is_property_hidden(self):
        ...

    def is_property_overridable_library(self):
        ...

    def is_property_readonly(self):
        ...

    def is_property_set(self):
        ...

    def items(self):
        ...

    def keyframe_delete(self):
        ...

    def keyframe_insert(self):
        ...

    def keys(self):
        ...

    def path_from_id(self):
        ...

    def path_resolve(self):
        ...

    def poll(self, context):
        ...

    def poll_message_set(self):
        ...

    def pop(self):
        ...

    def property_overridable_library_set(self):
        ...

    def property_unset(self):
        ...

    def type_recast(self):
        ...

    def values(self):
        ...


class SequencerFadesAdd(bpy_types.Operator):
    bl_idname: typing.Any
    bl_label: typing.Any
    bl_options: typing.Any
    bl_rna: typing.Any
    id_data: typing.Any

    def as_keywords(self, ignore):
        ...

    def as_pointer(self):
        ...

    def bl_rna_get_subclass(self):
        ...

    def bl_rna_get_subclass_py(self):
        ...

    def calculate_fade_duration(self, context, sequence):
        ...

    def calculate_fades(self, sequence, fade_fcurve, animated_property,
                        duration):
        ...

    def driver_add(self):
        ...

    def driver_remove(self):
        ...

    def execute(self, context):
        ...

    def fade_animation_clear(self, fade_fcurve, fades):
        ...

    def fade_animation_create(self, fade_fcurve, fades):
        ...

    def fade_find_or_create_fcurve(self, context, sequence, animated_property):
        ...

    def get(self):
        ...

    def id_properties_clear(self):
        ...

    def id_properties_ensure(self):
        ...

    def id_properties_ui(self):
        ...

    def is_long_enough(self, sequence, duration):
        ...

    def is_property_hidden(self):
        ...

    def is_property_overridable_library(self):
        ...

    def is_property_readonly(self):
        ...

    def is_property_set(self):
        ...

    def items(self):
        ...

    def keyframe_delete(self):
        ...

    def keyframe_insert(self):
        ...

    def keys(self):
        ...

    def path_from_id(self):
        ...

    def path_resolve(self):
        ...

    def poll(self, context):
        ...

    def poll_message_set(self):
        ...

    def pop(self):
        ...

    def property_overridable_library_set(self):
        ...

    def property_unset(self):
        ...

    def type_recast(self):
        ...

    def values(self):
        ...


class SequencerFadesClear(bpy_types.Operator):
    bl_idname: typing.Any
    bl_label: typing.Any
    bl_options: typing.Any
    bl_rna: typing.Any
    id_data: typing.Any

    def as_keywords(self, ignore):
        ...

    def as_pointer(self):
        ...

    def bl_rna_get_subclass(self):
        ...

    def bl_rna_get_subclass_py(self):
        ...

    def driver_add(self):
        ...

    def driver_remove(self):
        ...

    def execute(self, context):
        ...

    def get(self):
        ...

    def id_properties_clear(self):
        ...

    def id_properties_ensure(self):
        ...

    def id_properties_ui(self):
        ...

    def is_property_hidden(self):
        ...

    def is_property_overridable_library(self):
        ...

    def is_property_readonly(self):
        ...

    def is_property_set(self):
        ...

    def items(self):
        ...

    def keyframe_delete(self):
        ...

    def keyframe_insert(self):
        ...

    def keys(self):
        ...

    def path_from_id(self):
        ...

    def path_resolve(self):
        ...

    def poll(self, context):
        ...

    def poll_message_set(self):
        ...

    def pop(self):
        ...

    def property_overridable_library_set(self):
        ...

    def property_unset(self):
        ...

    def type_recast(self):
        ...

    def values(self):
        ...


class SequencerSplitMulticam(bpy_types.Operator):
    bl_idname: typing.Any
    bl_label: typing.Any
    bl_options: typing.Any
    bl_rna: typing.Any
    id_data: typing.Any

    def as_keywords(self, ignore):
        ...

    def as_pointer(self):
        ...

    def bl_rna_get_subclass(self):
        ...

    def bl_rna_get_subclass_py(self):
        ...

    def driver_add(self):
        ...

    def driver_remove(self):
        ...

    def execute(self, context):
        ...

    def get(self):
        ...

    def id_properties_clear(self):
        ...

    def id_properties_ensure(self):
        ...

    def id_properties_ui(self):
        ...

    def is_property_hidden(self):
        ...

    def is_property_overridable_library(self):
        ...

    def is_property_readonly(self):
        ...

    def is_property_set(self):
        ...

    def items(self):
        ...

    def keyframe_delete(self):
        ...

    def keyframe_insert(self):
        ...

    def keys(self):
        ...

    def path_from_id(self):
        ...

    def path_resolve(self):
        ...

    def poll(self, context):
        ...

    def poll_message_set(self):
        ...

    def pop(self):
        ...

    def property_overridable_library_set(self):
        ...

    def property_unset(self):
        ...

    def type_recast(self):
        ...

    def values(self):
        ...


def calculate_duration_frames(scene, duration_seconds):
    ...
