{C : Type u₁} →
  [inst : CategoryTheory.Category.{v₁, u₁} C] →
    {A : Type u₂} →
      [inst_1 : CategoryTheory.Category.{v₂, u₂} A] →
        {B : Type u₃} →
          [inst_2 : CategoryTheory.Category.{v₃, u₃} B] →
            {J : CategoryTheory.GrothendieckTopology C} →
              {F : CategoryTheory.Functor A B} →
                {motive : J.HasSheafCompose F → Sort u} →
                  ((isSheaf :
                        ∀ (P : CategoryTheory.Functor Cᵒᵖ A),
                          CategoryTheory.Presheaf.IsSheaf J P → CategoryTheory.Presheaf.IsSheaf J (P.comp F)) →
                      motive ⋯) →
                    (t : J.HasSheafCompose F) → motive t