import { HydratedDocument } from 'mongoose';
import { LeadType, PunchType } from '../../common/constants/enums';
export type PunchDocument = HydratedDocument<Punch>;
export declare class Punch {
    tripId: string;
    type: PunchType;
    timestamp: Date;
    latitude: number;
    longitude: number;
    address?: string;
    batteryPercent?: number;
    gpsAccuracy?: number;
    speed?: number;
    isMockLocation: boolean;
    meetingSummary?: string;
    leadType?: LeadType;
    customerNotes?: string;
}
export declare const PunchSchema: import("mongoose").Schema<Punch, import("mongoose").Model<Punch, any, any, any, any, any, Punch>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, Punch, import("mongoose").Document<unknown, {}, Punch, {
    id: string;
}, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
    _id: import("mongoose").Types.ObjectId;
} & {
    __v: number;
}, "id"> & {
    id: string;
}, {
    tripId?: import("mongoose").SchemaDefinitionProperty<string, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    type?: import("mongoose").SchemaDefinitionProperty<PunchType, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    timestamp?: import("mongoose").SchemaDefinitionProperty<Date, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    latitude?: import("mongoose").SchemaDefinitionProperty<number, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    longitude?: import("mongoose").SchemaDefinitionProperty<number, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    address?: import("mongoose").SchemaDefinitionProperty<string | undefined, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    batteryPercent?: import("mongoose").SchemaDefinitionProperty<number | undefined, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    gpsAccuracy?: import("mongoose").SchemaDefinitionProperty<number | undefined, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    speed?: import("mongoose").SchemaDefinitionProperty<number | undefined, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    isMockLocation?: import("mongoose").SchemaDefinitionProperty<boolean, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    meetingSummary?: import("mongoose").SchemaDefinitionProperty<string | undefined, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    leadType?: import("mongoose").SchemaDefinitionProperty<LeadType | undefined, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
    customerNotes?: import("mongoose").SchemaDefinitionProperty<string | undefined, Punch, import("mongoose").Document<unknown, {}, Punch, {
        id: string;
    }, import("mongoose").DefaultSchemaOptions> & Omit<Punch & {
        _id: import("mongoose").Types.ObjectId;
    } & {
        __v: number;
    }, "id"> & {
        id: string;
    }> | undefined;
}, Punch>;
