// Path: GGAForms/ggaforms/src/main/java/com/greengrowapps/ggaforms/fields/FormInput.java
// public interface FormInput<T> {
// 
//     void setOnInputChangedListener(OnInputChangedListener listener);
// 
//     void setError(ValidationError error);
// 
//     Class<T> getType();
//     T getValue();
//     void setValue(T value);
// 
//     ValidationError getError();
// }
// 
// Path: GGAForms/ggaforms/src/main/java/com/greengrowapps/ggaforms/listeners/OnValidSectionListener.java
// public interface OnValidSectionListener {
// 
//     void onSectionValid();
//     void onSectionInvalid(CharSequence error);
// }


import com.greengrowapps.ggaforms.fields.FormInput;
import com.greengrowapps.ggaforms.listeners.OnValidSectionListener;
package com.greengrowapps.ggaforms;



public interface SectionBuilder {
    SectionBuilder appendField(String propertyName, FormInput formInput);
    SectionBuilder listenValidity(OnValidSectionListener listener);
// Path: GGAForms/ggaforms/src/main/java/com/greengrowapps/ggaforms/fields/FormInput.java
// public interface FormInput<T> {
// 
//     void setOnInputChangedListener(OnInputChangedListener listener);
// 
//     void setError(ValidationError error);
// 
//     Class<T> getType();
//     T getValue();
//     void setValue(T value);
// 
//     ValidationError getError();
// }
// 
// Path: GGAForms/ggaforms/src/main/java/com/greengrowapps/ggaforms/listeners/OnValidSectionListener.java
// public interface OnValidSectionListener {
// 
//     void onSectionValid();
//     void onSectionInvalid(CharSequence error);
// }


// Path: GGAForms/ggaforms/src/main/java/com/greengrowapps/ggaforms/SectionBuilder.java
import com.greengrowapps.ggaforms.fields.FormInput;
import com.greengrowapps.ggaforms.listeners.OnValidSectionListener;

package com.greengrowapps.ggaforms;



public interface SectionBuilder {
    SectionBuilder appendField(String propertyName, FormInput formInput);
    SectionBuilder listenValidity(OnValidSectionListener listener);
    FormInput build();