package com.aip.gateway.api.service;

import com.aip.gateway.api.dto.LinkedApiKeyDto;
import com.aip.gateway.api.dto.LinkedDecryptKeyDto;
import com.aip.gateway.api.dto.LinkedServerDto;
import com.aip.gateway.api.dto.LinkedSystemDto;
import com.aip.gateway.api.entity.TbAipConfig;
import com.aip.gateway.api.entity.TbLinkedApiKey;
import com.aip.gateway.api.entity.TbLinkedDecryptKey;
import com.aip.gateway.api.model.response.GeneralResponse;

import java.util.List;

public interface IApiDbService {

    GeneralResponse reloadDatabase();

    // Base Table Interface
    List<LinkedSystemDto> getLinkedSystems();
    List<LinkedServerDto> getLinkedServers();
    List<LinkedApiKeyDto> getLinkedApiKeys();
    List<LinkedDecryptKeyDto> getLinkedDecryptKeys();

    List<TbAipConfig> loadAipConfig();
    List<TbLinkedApiKey> loadLinkedApiKeys();
    List<TbLinkedDecryptKey> loadLinkedDecryptKeys();
}
