namespace App\Services\Api\Contracts; interface ApiProviderInterface { /** * Get provider configuration */ public function getConfig(): array; /** * Check API connection */ public function checkConnection(): array; /** * Get provider balance */ public function getBalance(): array; /** * Get services from provider */ public function getServices(): array; /** * Place order with provider */ public function placeOrder(array $params): array; /** * Get order status from provider */ public function getOrderStatus(string $orderId): array; /** * Request refill for order */ public function requestRefill(string $orderId): array; /** * Cancel order with provider */ public function cancelOrder(string $orderId): array; /** * Format API response */ public function formatResponse(array $response, string $action): array; }