import { PetriNetResourceService } from '../petri-net-resource.service';
import { Params, ResourceProvider } from '../../resource-provider.service';
import { ConfigurationService } from '../../../configuration/configuration.service';
import { Observable } from 'rxjs';
import { PetriNet } from '../../interface/petri-net';
import { PetriNetReference } from '../../interface/petri-net-reference';
import { PetriNetRequestBody } from '../../interface/petri-net-request-body';
import { Page } from '../../interface/page';
import Transaction from '../../../process/transaction';
import Transition from '../../../process/transition';
import RolesAndPermissions from '../../../process/rolesAndPermissions';
import * as i0 from "@angular/core";
export declare class PublicPetriNetResourceService extends PetriNetResourceService {
    protected provider: ResourceProvider;
    protected _configService: ConfigurationService;
    constructor(provider: ResourceProvider, _configService: ConfigurationService);
    /**
     * get One Net by ID
     *
     * **Request Type:** GET
     *
     * **Request URL:** {{baseUrl}}/api/public/petrinet/{id}
     */
    getOneById(netId: string, params?: Params): Observable<PetriNet>;
    /**
     * get One Net
     *
     * **Request Type:** GET
     *
     * **Request URL:** {{baseUrl}}/api/public/petrinet/{identifier}/{version}
     */
    getOne(identifier: string, version: string, params?: Params): Observable<PetriNetReference>;
    /**
     * search PetriNets
     *
     * **Request Type:** POST
     *
     * **Request URL:** {{baseUrl}}/api/petrinet/search
     */
    searchPetriNets(body: PetriNetRequestBody, params?: Params): Observable<Page<PetriNetReference>>;
    /**
     * Get Roles References Using
     *
     * **Request Type:** GET
     *
     * **Request URL:** {{baseUrl}}/api/petrinet/{id}/roles
     */
    getPetriNetRoles(netId: string, params?: Params): Observable<RolesAndPermissions>;
    /**
     * Get Transaction References Using
     *
     * **Request Type:** GET
     *
     * **Request URL:** {{baseUrl}}/api/petrinet/{id}/transactions
     */
    getPetriNetTransactions(netId: string, params?: Params): Observable<Array<Transaction>>;
    /**
     * Get Data Field References Using
     *
     * **Request Type:** POST
     *
     * **Request URL:** {{baseUrl}}/api/petrinet/data
     */
    getDataPetriNet(body: object): Observable<any>;
    /**
     * Get Transition References Using
     *
     * **Request Type:** GET
     *
     * **Request URL:** {{baseUrl}}/api/petrinet/transitions
     */
    getPetriNetTransitions(netId: string): Observable<Array<Transition>>;
    static ɵfac: i0.ɵɵFactoryDeclaration<PublicPetriNetResourceService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<PublicPetriNetResourceService>;
}
