import { FormbirdInjectorService } from '../injector/formbird-injector.service';
export declare class ChangedDocumentService {
    private injector;
    ajsService: any;
    constructor(injector: FormbirdInjectorService);
    /**
     * Listen value changes on a specified document field
     * @param fieldName the field name of document
     * @param documentId the document id
     * @param controlName the registered control that holds the field value in this component. It is used to check on the source of change
     * to avoid applying changes itself and also applying the value from the components that share the field name.
     * @param options provides more information for the watch.
     */
    watch(fieldName: any, documentId: any, controlName?: any, options?: any): any;
    /**
     * Provide the change information for the specified document field that the component binds to
     * @param component the component binds to the field
     * @param newValue the changed/new value
     * @param controlName the registered control manages the field value
     * @param options the options
     */
    valueChanged(component: any, value: any, controlName?: string, options?: any): void;
    executeOnFieldChangeWithNoChanges(component: any): void;
    watchDocument(documentId: any): any;
    watchStoreChanges(): any;
    dispatchAction(action: any): void;
    watchComponentTemplate(templateId: any): any;
    notifyIntializedField(component: any, shouldDispatchEmptyFieldValue?: any): any;
}
