Cómo obtener el resultado de Laravel Query Builder como entero

Estoy usando Laravel Query Builder para consultar la base de datos MySQL pero devuelve valores enteros como valores de cadena.

Tengo la siguiente consulta.

$query = DB::table('store_products')->select('products.id', 'products.name', 'products.unit_type', 'products.price', 'products.image_path', 'products.is_popular', 'store_products.price AS store_price')
           ->join('products', 'products.id', '=', 'store_products.product_id')
           ->join('product_categories', 'product_categories.product_id', '=', 'store_products.product_id')
           ->where('store_products.store_id', $store_id)
           ->where('store_products.product_id', $product_id);

Aquí la consulta obtiene el Producto que existe enStore_Products por dadostore_id.

El problema es que vuelveid (que es la clave principal para el producto) comostring cuando uso el generador de consultas. Parece que hay algo mal con los moldes.

¿Como puedó resolver esté problema?

Muchas gracias por adelantado.

Respuestas a la pregunta(2)

Su respuesta a la pregunta