import { AccionConfig, TablaConfig } from '../../../models/tabla-config'; import { OnDestroy, OnInit } from '@angular/core'; import { BehaviorSubject, Observable, Subject } from 'rxjs'; import { EvkHttpService } from '@evomatik/evk-common'; import { DatosGeneralesElements } from '../models/datos-generales-response.model'; import { EvkStepModel } from '../../../evk-stepper/models/evk-step.model'; import { DatosGeneralesWizardEventsService } from '../../services/datos-generales-wizard-events.service'; import { ExpedienteModel } from '../../../evk-stepper/models/expediente.model'; export declare abstract class DatoGeneralBaseComponent implements OnInit, OnDestroy { http: EvkHttpService; protected datosGeneralesWizardEventsService: DatosGeneralesWizardEventsService; abstract readonly api: string; abstract readonly tableConfig: TablaConfig; configuracionTabla: TablaConfig; data$: Observable; actionElement: BehaviorSubject; elementsSelected: M[]; configSeccion: EvkStepModel; readOnly$: Observable | BehaviorSubject | Subject; actions: AccionConfig[]; stop$: Subject; expediente: ExpedienteModel; elementsDiligencia: M[]; readOnly: boolean; elementsDiligenciaPadre: M[]; isUpdate: boolean; /** * Funcion que se ejecuta cuando dar clic en el boton Nuevo * @param origen: La seccion de origen */ abstract onAdd(origen: string): void; /** * Funcion que se ejecuta cuando dan clic en la accion Editar * @param data: Los datos que se editaran */ abstract onEdit(data: M): void; /** * Funcion que se ejecuta cuando dan clic en la accion Editar * @param data: Los datos que se editaran */ abstract onShow(data: M): void; constructor(http: EvkHttpService, datosGeneralesWizardEventsService: DatosGeneralesWizardEventsService); ngOnInit(): void; fetchData(): Observable; onSelectionChanged(data: M[]): void; creaAcciones(): void; onAction(data: Record): void; ngOnDestroy(): void; generaElementos(elementosExpediente: M[]): M[]; seEncuentraElemento(arrar: any, elemento: any): boolean; }