import { Prop, Schema, SchemaFactory } from '@nestjs/mongoose';
import { Document } from 'mongoose';

export type StorageProviderDocument = StorageProvider & Document;

@Schema({ timestamps: true })
export class StorageProvider {
  @Prop({
    required: true,
    enum: ['filesystem', 's3'],
    unique: true,
  })
  name: string;

  @Prop({ type: Boolean, default: false })
  active: boolean;

  @Prop({ type: Object, default: {} })
  config: Record<string, any>;
}

export const StorageProviderSchema =
  SchemaFactory.createForClass(StorageProvider);
