prebuilt.startup.pitchdeck.models¶
Pitch deck models for the Haive framework.
This module provides comprehensive data models for creating, managing, and generating pitch decks using AI agents. The models are designed to be composable, serializable, and extensible, following Haive’s dynamic architecture principles.
The models support: - Complete pitch deck structure with slides and sections - Content generation tracking and versioning - Agent collaboration metadata - Validation and quality scoring - Export to various formats
Classes¶
Metadata about agent contributions to content generation. |
|
Data structure for charts and visualizations. |
|
Status of content generation. |
|
Represents a single data point that can be used in slides. |
|
Visual design styles for the pitch deck. |
|
Supported export formats for pitch decks. |
|
Financial metrics and projections. |
|
Specialized content for financial slides. |
|
Complete pitch deck model. |
|
Metadata about the pitch deck. |
|
Template for creating pitch decks. |
|
Metrics for assessing pitch deck quality. |
|
A single slide in the pitch deck. |
|
Base content for a slide with common fields. |
|
Tracks revisions to a slide. |
|
Types of slides commonly found in pitch decks. |
|
Information about a team member. |
|
Specialized content for team slides. |
Module Contents¶
- class prebuilt.startup.pitchdeck.models.AgentMetadata(/, **data)¶
Bases:
pydantic.BaseModel
Metadata about agent contributions to content generation.
Tracks which agents contributed to what content for auditing and improvement.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.ChartData(/, **data)¶
Bases:
pydantic.BaseModel
Data structure for charts and visualizations.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- classmethod validate_data_points(v)¶
Ensure we have at least one data point.
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.ContentStatus¶
-
Status of content generation.
Initialize self. See help(type(self)) for accurate signature.
- class prebuilt.startup.pitchdeck.models.DataPoint(/, **data)¶
Bases:
pydantic.BaseModel
Represents a single data point that can be used in slides.
This is useful for financial data, metrics, market statistics, etc.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.DesignStyle¶
-
Visual design styles for the pitch deck.
Initialize self. See help(type(self)) for accurate signature.
- class prebuilt.startup.pitchdeck.models.ExportFormat¶
-
Supported export formats for pitch decks.
Initialize self. See help(type(self)) for accurate signature.
- class prebuilt.startup.pitchdeck.models.FinancialMetrics(/, **data)¶
Bases:
pydantic.BaseModel
Financial metrics and projections.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- validate_metrics()¶
Validate financial metrics relationships.
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.FinancialSlideContent(/, **data)¶
Bases:
SlideContent
Specialized content for financial slides.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- class prebuilt.startup.pitchdeck.models.PitchDeck(/, **data)¶
Bases:
pydantic.BaseModel
Complete pitch deck model.
This is the main model that contains all slides and orchestrates the pitch deck creation process.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- add_slide(slide, position=None)¶
Add a slide to the deck.
- Parameters:
slide (Slide[SlideContent])
position (int | None)
- Return type:
None
- export_config(format)¶
Generate export configuration for the specified format.
Returns configuration that can be used by export agents.
- Parameters:
format (ExportFormat)
- Return type:
- get_next_slide_to_generate()¶
Get the next slide that needs generation.
- Return type:
Slide[SlideContent] | None
- get_slide_by_type(slide_type)¶
Get the first slide of a given type.
- Parameters:
slide_type (SlideType)
- Return type:
Slide[SlideContent] | None
- get_slides_by_status(status)¶
Get all slides with a specific status.
- Parameters:
status (ContentStatus)
- Return type:
- to_review_format()¶
Convert deck to a format suitable for review.
Returns a simplified version for review agents or humans.
- validate_deck()¶
Validate deck structure and update indices.
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.PitchDeckMetadata(/, **data)¶
Bases:
pydantic.BaseModel
Metadata about the pitch deck.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.PitchDeckTemplate(/, **data)¶
Bases:
pydantic.BaseModel
Template for creating pitch decks.
Defines the structure and requirements for a type of pitch deck.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- create_deck_scaffold(metadata)¶
Create a new pitch deck scaffold from this template.
- Parameters:
metadata (PitchDeckMetadata)
- Return type:
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.QualityMetrics(/, **data)¶
Bases:
pydantic.BaseModel
Metrics for assessing pitch deck quality.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.Slide(/, **data)¶
Bases:
pydantic.BaseModel
,Generic
[TContent
]A single slide in the pitch deck.
Generic over content type to allow specialized slide content while maintaining type safety.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- add_agent_contribution(agent_metadata)¶
Track agent contribution to this slide.
- Parameters:
agent_metadata (AgentMetadata)
- Return type:
None
- update_timestamp()¶
Update timestamp when model is modified.
- validate_content()¶
Validate slide content and return any issues.
Override in subclasses for specific validation rules.
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.SlideContent(/, **data)¶
Bases:
pydantic.BaseModel
Base content for a slide with common fields.
This can be extended for specific slide types with additional fields.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- classmethod validate_headline(v)¶
Ensure headline is not too long.
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.SlideRevision(/, **data)¶
Bases:
pydantic.BaseModel
Tracks revisions to a slide.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.SlideType¶
-
Types of slides commonly found in pitch decks.
Initialize self. See help(type(self)) for accurate signature.
- class prebuilt.startup.pitchdeck.models.TeamMember(/, **data)¶
Bases:
pydantic.BaseModel
Information about a team member.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)
- model_config¶
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- class prebuilt.startup.pitchdeck.models.TeamSlideContent(/, **data)¶
Bases:
SlideContent
Specialized content for team slides.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- Parameters:
data (Any)