{motive : Lean.IR.Decl → Sort u} →
  ((f : Lean.IR.FunId) →
      (xs : Array Lean.IR.Param) →
        (type : Lean.IR.IRType) →
          (body : Lean.IR.FnBody) → (info : Lean.IR.DeclInfo) → motive (Lean.IR.Decl.fdecl f xs type body info)) →
    ((f : Lean.IR.FunId) →
        (xs : Array Lean.IR.Param) →
          (type : Lean.IR.IRType) → (ext : Lean.ExternAttrData) → motive (Lean.IR.Decl.extern f xs type ext)) →
      (t : Lean.IR.Decl) → motive t