package dafny;

@FunctionalInterface
public interface Function15<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> {
  public T15 apply(T0 t0, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6, T7 t7, T8 t8, T9 t9, T10 t10, T11 t11, T12 t12, T13 t13, T14 t14);
  @SuppressWarnings({"unchecked", "deprecation"})
  public static <T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15> dafny.TypeDescriptor<Function15<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>> _typeDescriptor(dafny.TypeDescriptor<T0> t0, dafny.TypeDescriptor<T1> t1, dafny.TypeDescriptor<T2> t2, dafny.TypeDescriptor<T3> t3, dafny.TypeDescriptor<T4> t4, dafny.TypeDescriptor<T5> t5, dafny.TypeDescriptor<T6> t6, dafny.TypeDescriptor<T7> t7, dafny.TypeDescriptor<T8> t8, dafny.TypeDescriptor<T9> t9, dafny.TypeDescriptor<T10> t10, dafny.TypeDescriptor<T11> t11, dafny.TypeDescriptor<T12> t12, dafny.TypeDescriptor<T13> t13, dafny.TypeDescriptor<T14> t14, dafny.TypeDescriptor<T15> t15) {
    return (dafny.TypeDescriptor<Function15<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15>>) (dafny.TypeDescriptor<?>) dafny.TypeDescriptor.reference(Function15.class);}
}
