QrCodeInterface.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <?php
  2. declare(strict_types=1);
  3. /*
  4. * (c) Jeroen van den Enden <info@endroid.nl>
  5. *
  6. * This source file is subject to the MIT license that is bundled
  7. * with this source code in the file LICENSE.
  8. */
  9. namespace Endroid\QrCode;
  10. interface QrCodeInterface
  11. {
  12. public function getText(): string;
  13. public function getSize(): int;
  14. public function getMargin(): int;
  15. /** @return array<int> */
  16. public function getForegroundColor(): array;
  17. /** @return array<int> */
  18. public function getBackgroundColor(): array;
  19. public function getEncoding(): string;
  20. public function getRoundBlockSize(): bool;
  21. public function getErrorCorrectionLevel(): ErrorCorrectionLevel;
  22. public function getLogoPath(): ?string;
  23. public function getLogoWidth(): ?int;
  24. public function getLogoHeight(): ?int;
  25. public function getLabel(): ?string;
  26. public function getLabelFontPath(): string;
  27. public function getLabelFontSize(): int;
  28. public function getLabelAlignment(): string;
  29. /** @return array<int> */
  30. public function getLabelMargin(): array;
  31. public function getValidateResult(): bool;
  32. /** @return array<mixed> */
  33. public function getWriterOptions(): array;
  34. public function getContentType(): string;
  35. public function setWriterRegistry(WriterRegistryInterface $writerRegistry): void;
  36. public function writeString(): string;
  37. public function writeDataUri(): string;
  38. public function writeFile(string $path): void;
  39. /** @return array<mixed> */
  40. public function getData(): array;
  41. }