57 lines
920 B
Python
57 lines
920 B
Python
# Copyright (c) 2010-2024 openpyxl
|
|
|
|
from abc import abstractproperty
|
|
from openpyxl.compat.abc import ABC
|
|
|
|
|
|
class ISerialisableFile(ABC):
|
|
|
|
"""
|
|
Interface for Serialisable classes that represent files in the archive
|
|
"""
|
|
|
|
|
|
@abstractproperty
|
|
def id(self):
|
|
"""
|
|
Object id making it unique
|
|
"""
|
|
pass
|
|
|
|
|
|
@abstractproperty
|
|
def _path(self):
|
|
"""
|
|
File path in the archive
|
|
"""
|
|
pass
|
|
|
|
|
|
@abstractproperty
|
|
def _namespace(self):
|
|
"""
|
|
Qualified namespace when serialised
|
|
"""
|
|
pass
|
|
|
|
|
|
@abstractproperty
|
|
def _type(self):
|
|
"""
|
|
The content type for the manifest
|
|
"""
|
|
|
|
|
|
@abstractproperty
|
|
def _rel_type(self):
|
|
"""
|
|
The content type for relationships
|
|
"""
|
|
|
|
|
|
@abstractproperty
|
|
def _rel_id(self):
|
|
"""
|
|
Links object with parent
|
|
"""
|