Files
compress/internal/domain/repositories/interfaces.go
Dmitriy Fofanov eee9a4a093 Добавлены скрипты сборки для кроссплатформенных двоичных файлов и лицензия GPL.
- Добавлен файл LICENSE с лицензией GNU General Public License версии 3.0.
- Создан скрипт PowerShell (build-all.ps1) для сборки двоичных файлов Windows и Linux из Windows с использованием кросс-компиляции.
- Разработан скрипт сборки Linux (build-linux.sh) для сборки двоичных файлов Linux.
- Реализован скрипт PowerShell (build-windows.ps1) для сборки двоичных файлов Windows.
- Каждый скрипт сборки включает упаковку и генерацию контрольной суммы SHA256 для двоичных файлов.
2025-11-05 13:05:49 +03:00

25 lines
846 B
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package repositories
import (
"compress/internal/domain/entities"
)
// PDFCompressor интерфейс для сжатия PDF файлов
type PDFCompressor interface {
Compress(inputPath, outputPath string, config *entities.CompressionConfig) (*entities.CompressionResult, error)
}
// FileRepository интерфейс для работы с файловой системой
type FileRepository interface {
GetFileInfo(path string) (*entities.PDFDocument, error)
FileExists(path string) bool
CreateDirectory(path string) error
ListPDFFiles(directory string) ([]string, error)
}
// ConfigRepository интерфейс для работы с конфигурацией
type ConfigRepository interface {
GetCompressionConfig(level int) (*entities.CompressionConfig, error)
ValidateConfig(config *entities.CompressionConfig) error
}